EA031450B1 - Способ и компьютерная система кодирования сигнала в многоуровневой иерархии качества сигнала - Google Patents
Способ и компьютерная система кодирования сигнала в многоуровневой иерархии качества сигнала Download PDFInfo
- Publication number
- EA031450B1 EA031450B1 EA201490313A EA201490313A EA031450B1 EA 031450 B1 EA031450 B1 EA 031450B1 EA 201490313 A EA201490313 A EA 201490313A EA 201490313 A EA201490313 A EA 201490313A EA 031450 B1 EA031450 B1 EA 031450B1
- Authority
- EA
- Eurasian Patent Office
- Prior art keywords
- recovery data
- data
- signal
- probability distribution
- recovery
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/36—Scalability techniques involving formatting the layers as a function of picture distortion after decoding, e.g. signal-to-noise [SNR] scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/33—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
В изобретении процессор сигналов конфигурируется для кодирования сигнала в иерархии, включающей в себя множественные уровни качества. Процессор сигналов создает визуализацию сигнала, по меньшей мере, для первого уровня качества. Процессор сигналов формирует наборы данных восстановления, задающие то, как преобразовать визуализацию сигнала на первом уровне качества в визуализацию сигнала на втором (более высоком) уровне качества в иерархии, возможно применяя доступные опорные сигналы. В соответствии с одной компоновкой процессор сигналов использует энтропийный кодер для кодирования данных восстановления. На основе информации о распределении вероятностей для одного или более символов в каждом наборе данных восстановления и на основе информации о распределении вероятностей и/или других параметров кодирования, унаследованных от предыдущих уровней качества, энтропийный кодер кодирует данные восстановления в кодированное значение или битовую строку. Используя информацию о распределении вероятностей, энтропийный декодер преобразует кодированное значение или битовую строку обратно в данные восстановления.
Description
ОПИСАНИЕ ИЗОБРЕТЕНИЯ К ЕВРАЗИЙСКОМУ ПАТЕНТУ
(45) | Дата публикации и выдачи патента | (51) Int. Cl. H04N 7/26 (2006.01) |
2019.01.31 | НОЗМ 7/40 (2006.01) | |
(21) | Номер заявки | |
201490313 | ||
(22) | Дата подачи заявки | |
2012.07.20 |
(54) СПОСОБ И КОМПЬЮТЕРНАЯ СИСТЕМА КОДИРОВАНИЯ СИГНАЛА В МНОГОУРОВНЕВОЙ ИЕРАРХИИ КАЧЕСТВА СИГНАЛА (31) 13/188,226 (32) 2011.07.21 (33) US (43) 2014.06.30 (86) РСТЛВ2012/053725 (87) WO 2013/011495 2013.01.24 (71)(72)(73) Заявитель, изобретатель и патентовладелец:
РОССАТО ЛУКА; МЕАРДИ ГВИДО (IT) (74) Представитель:
Медведев В.Н. (RU) (56) SCHWARZ Н. ET AL.: SVC overview, 21. JVT MEETING; 78. MPEG MEETING; 20-10-2006-27-10-2006; HANGZHOU.CN; (JOINT VIDEO TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16), no. JVT-U145, 20 October 2006 (2006-10-20), XP030006791, ISSN: 0000-0405, abstract; fig. 6, i3, p. 3, right-hand column US-A-4122440
MARPE D. ET AL.: Context-based adaptive binary arithmetic coding in the H.264/AVC video compression standard, IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, IEEE SERVICE CENTER, PISCATAWAY, NI, US, vol. 13, no. 7, 1 fuly 2003 (2003-07-01), p. 620-636, XP011099255, ISSN: 1051-8215, DOI: 10.1109/TCSVT.2003.815173, the whole document
FULDSETH (CISCO) A: Replacing slices with tiles for high level parallelism, 4. ICT-VC MEETING; 95. MPEG MEETING; 20-1-2011-28-1-2011; DAEGU; (JOINT COLLABORATIVE TEAM ON VIDEO CODING OF ISO/IEC ITC1/SC29/WG11AND ITU-T SG.I6); URL: http://wftp3.itu.int/av-arch/jctvc-site/, no. ICTVC-D227, 15 fanuaiy 2011 (2011-01-15), XP030008267, ISSN: 0000-0013, abstract
US-A1-2008211901
SHIN I.-H. ET AL.: Rate control using linear rate-rho model for H.264, SIGNAL PROCESSING. IMAGE COMMUNICATION, ELSEVIER SCIENCE PUBLISHERS, AMSTERDAM, NL, vol. 19, no. 4, 1 April 2004 (2004-04-01), p. 341-352,
XP004495309, ISSN: 0923-5965, DOI: 10.1016/ J.IMAGE.2003.12.002, abstract
031450 В1
031450 Bl (57) В изобретении процессор сигналов конфигурируется для кодирования сигнала в иерархии, включающей в себя множественные уровни качества. Процессор сигналов создает визуализацию сигнала, по меньшей мере, для первого уровня качества. Процессор сигналов формирует наборы данных восстановления, задающие то, как преобразовать визуализацию сигнала на первом уровне качества в визуализацию сигнала на втором (более высоком) уровне качества в иерархии, возможно применяя доступные опорные сигналы. В соответствии с одной компоновкой процессор сигналов использует энтропийный кодер для кодирования данных восстановления. На основе информации о распределении вероятностей для одного или более символов в каждом наборе данных восстановления и на основе информации о распределении вероятностей и/или других параметров кодирования, унаследованных от предыдущих уровней качества, энтропийный кодер кодирует данные восстановления в кодированное значение или битовую строку. Используя информацию о распределении вероятностей, энтропийный декодер преобразует кодированное значение или битовую строку обратно в данные восстановления.
Уровень техники
Эффективность CPU (центральный процессор) имеет значение как во время кодирования, так и декодирования сигнала. Процессоры последнего поколения становятся все более параллельными, имеющими вплоть до сотен простых ядер на каждой однокристальной ИС.
К сожалению, по своей природе традиционные кодеки семейства MPEG (Экспертная группа по движущимся изображениям) структурно не являются параллельными. Это происходит от того, что они являются блочными, и каждый блок изображения должен кодироваться и декодироваться последовательно, поскольку для достижения эффективного сжатия все блоки нужно сделать некоторым образом зависимыми друг от друга.
Посредством введения в кодирование MPEG так называемых секций (в основном порций изображения, которые рассматриваются независимо друг от друга, как если бы они были отдельными видео, помещенными одно за другим) стандарт H.264 допускает обработку нескольких потоков параллельно (обычно 2 или 3 потока). Важные элементы алгоритма, например устранение блочности (то есть фильтр, который сглаживает переходы между блоками для создания более однородного изображения), обычно являются глобальными операциями, полными условных команд, которые не подходят для применений, включающих в себя параллельные CPU.
Современные CPU и GPU (графические процессоры) обычно очень мощные; один GPU может включать в себя несколько сотен вычислительных ядер для выполнения параллельной обработки информации. При использовании современной технологии более крупные части изображения можно хранить в кэше процессора для обработки. Потребность фрагментировать изображения на множество небольших блоков, что было движущим фактором, когда создавалось MPEG, так как процессоры той эпохи могли иметь дело только с очень небольшими кусками видеоданных единовременно - и тогда только последовательно - уже не применяется к современным CPU и GPU. Таким образом, большая часть доступной мощности обработки может оставаться неиспользуемой при реализации MPEG-подобных типов кодирования/декодирования, при этом блочные артефакты вносятся в сигнал без необходимости.
Также по сравнению с тем, что было современным, когда разрабатывалось MPEG, современные приложения обычно требуют кодирования видео с гораздо более высокой четкостью и гораздо более высоким общим качеством воспроизведения. В видео с высокой четкостью (HD), с высоким качеством существует гораздо большая разница между областями с низкой детализацией (возможно, даже не в фокусе) и областями с очень мелкой детализацией. Это делает использование преобразований частотной области, например, используемых в MPEG, еще больше неподходящим для обработки и воспроизведения изображений, поскольку диапазон релевантных частот становится гораздо шире.
К тому же изображения с более высоким разрешением включают в себя большее количество шумов камеры и/или зернистости, то есть очень детализированные высокочастотные пиксельные переходы, которые могут быть совершенно неуместными для просмотра и требуют многих битов для кодирования.
Наконец, традиционные кодеки непригодны для эффективной работы при формировании трехмерных (3D) или объемных изображений, которое становится все более важным в таких областях, как медицинская (диагностическая) визуализация, формирование научных изображений и т.п.
Большинство целевых устройств сегодня поддерживают разные разрешения и качество воспроизведения. Так называемое SVC (Масштабируемое кодирование видео), текущий стандарт MPEG для масштабируемости, не был одобрительно принят промышленностью и демонстрирует принятие от небольшого до отсутствующего, потому что он считается слишком сложным и отчасти неэффективным по использованию полосы пропускания.
Кроме того, существует обилие кодированных видео; то есть у поставщика контента обычно нет времени настраивать параметры кодера и экспериментировать с каждым конкретным видеопотоком. В настоящее время поставщикам контента не нравится, что многие параметры кодирования нужно подстраивать вручную (каждый раз выполняя кодирование и проверку качества результатов), чтобы успешно кодировать видео.
В качестве альтернативы стандартам MPEG для кодирования/декодирования использованы так называемые пирамиды изображений с целью кодирования/декодирования. Например, используя пирамиды Лапласа, традиционные системы создали изображения с более низким разрешением, используя фильтры Гаусса, а затем создавая пирамиду из разниц между изображениями, полученными путем повышающей дискретизации с помощью жестко запрограммированного декодера, обратно от уровней с более низким разрешением на исходный уровень.
Использование традиционного кодирования с пирамидой Лапласа прекращено. Одним недостатком таких преобразований является то, что авторы пытались избежать искажений/артефактов на изображении с пониженной дискретизацией, поэтому они обычно использовали фильтрацию Гаусса, так как это единственный тип фильтра, который не добавляет никакой собственной информации. Однако непреодолимая проблема с фильтрацией Гаусса состоит в том, что она вносит эффект размытия, так что при масштабировании обратно к более высоким разрешениям существует потребность в чрезмерном количестве информации коррекции изображения для воспроизведения исходного изображения. Другими словами, повышающая дискретизация с традиционными фильтрами приводит к зубчатым или размытым границам
- 1 031450 в восстановленном изображении. Зубчатые или размытые границы нужно корректировать с использованием существенного объема остаточных данных, что делает такую методику кодирования нежелательной для использования в применениях с более высоким разрешением.
Одной из важных составляющих любого кодера сигнала является операция, называемая в настоящее время энтропийным кодированием. На практике, как только операции кодирования и преобразования выполняются с помощью способов либо без потерь, либо с потерями, остатки (то есть новая информация, которую нельзя было извлечь из данных, например предыдущий кадр в видеосигнале, который уже доступен в декодере), по существу, являются строками чисел, которые нужно передать, если возможно, без какой-либо дополнительной потери или приближения и с помощью минимально возможного количества битов. Схемы сжатия данных без потерь, посредством которых строки чисел можно передавать с помощью минимально возможного количества битов, обычно называются энтропийным кодированием. Понятие энтропии в строке чисел/символов имеет отношение к внутреннему количеству информации, которое содержит строка чисел/символов: поскольку не все числа/символы в строке отличаются, то чем больше строка содержит несколько символов (в идеале - только один), которые часто повторяются, тем меньше битов необходимо для кодирования той строки.
В литературе существует несколько методологий для энтропийного кодирования. Сложные энтропийные кодеры (например, САВАС, контекстно-адаптивный энтропийный кодер, предложенный в H.264) могут достигать отличных результатов за счет большой вычислительной сложности, хотя другие, например методика, известная как интервальное кодирование, могут достигать аналогичных результатов только при использовании с подходящими параметрами. Обычно энтропийные кодеры эффективны только так же, как их оценка частот символов в строках для кодирования (то есть оценка распределения вероятностей символов, которые декодер обязан получить от кодера некоторым образом).
Поскольку кодеки семейства MPEG являются блочными (то есть они разделяют сигнал на некоторое количество блоков и, по существу, анализируют/кодируют каждый блок отдельно), то в идеале им понадобилось бы отдельное распределение вероятностей для остатков каждого одиночного блока: это, конечно, было бы непрактичным при условии очень большого количества блоков, поэтому они используют либо стандартные распределения вероятностей (не специальные для конкретного кадра, а следовательно - менее эффективные в показателях сжатия данных), либо адаптивные схемы типа САВАС (более эффективные, но очень сложные).
Способы и варианты осуществления в этом документе представляют новаторский подход к достижению эффективных результатов энтропийного кодирования при низкой вычислительной сложности.
Краткое описание
Варианты осуществления в этом документе отступают от традиционных систем и способов, чтобы создать сжатые, кодированные данные в многоуровневой иерархии качества сигнала. Например, некоторые варианты осуществления в этом документе ориентированы на уникальные способы формирования кодированных данных восстановления в иерархии на основе стандартных методик энтропийного кодирования. Для простоты реализации и эффективности сжатия настоящая заявка на патент описывает варианты осуществления, использующие с выгодой методики интервального кодирования, хотя охваченные в этом документе подходы могут применяться также с некоторыми другими типами энтропийных кодеров.
Точнее говоря, один вариант осуществления в этом документе включает в себя процессор сигналов, сконфигурированный для кодирования сигнала в иерархии, включающей в себя множественные уровни качества. С этой целью процессор сигналов создает визуализацию сигнала, по меньшей мере, для первого уровня качества. Процессор сигналов формирует наборы данных восстановления, задающие то, как преобразовать визуализацию сигнала на первом уровне качества в визуализацию сигнала на втором (более высоком) уровне качества в иерархии. Например, в соответствии с некоторыми способами наборы данных восстановления задают всю информацию, которая необходима для корректировки, объединения и дополнения данных и визуализации сигнала, которую можно автоматически вывести (унаследовать) из предыдущего (более низкого) уровня качества.
Процессор сигналов затем использует энтропийный кодер, например интервальный кодер, для кодирования каждого набора данных восстановления. Кодирование каждого набора данных восстановления может включать в себя создание интервального значения (битовой строки), представляющего кодируемые данные восстановления.
В соответствии с дополнительными вариантами осуществления отметим, что процессор сигналов перед кодированием может конфигурироваться для анализа каждого набора данных восстановления, чтобы создать информацию о распределении вероятностей, указывающую распределение вероятностей некоторых или всех символов в данных восстановления. Информация о распределении вероятностей, указывающая вероятность одного или более символов в данных восстановления, дает возможность выбранному энтропийному кодеру (например, в качестве неограничивающих примеров, интервальному кодированию, кодированию Хаффмана, табличному VLC/Кодированию переменной длины, кодированию по длинам серий и т.п.) кодировать данные восстановления в подходящую строку битов (например, интервальное значение). После создания интервального значения кодер сохраняет интервальное значение и информацию о распределении вероятностей для последующего декодирования интервального зна
- 2 031450 чения обратно в данные восстановления. Энтропийное кодирование может представлять любой из одного или более наборов разных типов данных восстановления, например параметры операций повышающей дискретизации, пороги квантования, остаточные данные для применения после повышающей дискретизации с более низких уровней качества, остаточные данные для применения после компенсации движения в изображении известного опорного сигнала, регулировки в векторах движения в плотной карте движений, используемой для компенсации движения, зоны движения, спектральная информация о шуме, метаданные и т.п.
Для каждого набора данных восстановления один или более ресурсов энтропийного декодера, например интервальный декодер (декодеры), декодируют кодированные значения (например, интервальные значения) обратно в исходные данные восстановления, по меньшей мере, частично на основе информации о распределении вероятностей у одного или более символов в каждом наборе исходных данных восстановления. После декодирования другой ресурс восстанавливает визуализации сигнала с использованием декодированных данных восстановления, созданных декодером (декодерами). Восстановление может основываться на разных типах данных восстановления, как упоминалось выше.
Данные восстановления могут включать в себя любой из множественных разных типов подходящих данных для восстановления на основе визуализации сигнала на более низком уровне качества и/или известного/доступного опорного сигнала (например, в качестве неограничивающего примера, предыдущего кадра в видео) визуализации сигнала на следующем, более высоком уровне качества. В одном варианте осуществления данные восстановления включают в себя так называемые внутренние остаточные данные, указывающие регулировки, которые подлежат выполнению после повышающей дискретизации визуализации сигнала на одном уровне качества до визуализации сигнала на следующем, более высоком уровне качества. В соответствии с другим вариантом осуществления данные восстановления включают в себя метаданные, например одну или более операций повышающей дискретизации, которые будут применены для повышения дискретизации сигнала с данного уровня качества до следующего, более высокого уровня качества. В соответствии с еще одним вариантом осуществления данные восстановления включают в себя регулировки, которые подлежат выполнению в плотной карте движений (то есть карте, содержащей векторы движения для всех элементов сигнала), полученной путем повышающей дискретизации карты движений, используемой на более низком уровне качества, с помощью подходящих операций; в таком варианте осуществления данные восстановления также могут включать в себя внешние остаточные данные, указывающие регулировки, которые подлежат выполнению в восстановленном сигнале после компенсации движения в известном опорном сигнале посредством вышеупомянутой плотной карты движений. В одном примерном варианте осуществления количество информации, необходимое для наборов данных восстановления, можно уменьшить путем отказа от задания информации о том, что можно вывести автоматически (унаследовать) из предыдущих (более низких) уровней качества.
Как упоминалось ранее, для каждого набора данных восстановления кодер может идентифицировать информацию о распределении вероятностей, указывающую вероятность одного или более символов в данных восстановления (которые могут быть представлены в виде строки символов), которые будут кодироваться. Энтропийный кодер создает по меньшей мере один параметр декодирования, который подлежит использованию соответствующим энтропийным декодером для экстраполяции распределения вероятностей для множественных символов в остаточных данных.
В дополнительных вариантах осуществления энтропийный кодер задает для энтропийного декодера более двух параметров для декодирования битовой строки в данные восстановления. В таком варианте осуществления энтропийный декодер предполагает, что первый параметр задает процентное отношение элементов остаточных данных в данных восстановления, которые равны самому распространенному значению, например нулю. Энтропийный декодер, принимающий эти параметры, предполагает, что каждый из N дополнительных параметров указывает вероятность другого или следующего наиболее часто встречающегося символа в данных восстановления. На основе N параметров и, возможно, других стандартных параметров декодер также экстраполирует вероятности всех остальных символов после N-ого символа. Информация о распределении вероятностей предоставляет основу для декодирования битовой строки обратно в исходные данные восстановления.
В соответствии с другим вариантом осуществления энтропийный кодер задает для декодера два параметра для декодирования битовой строки в данные восстановления. В таком варианте осуществления первый параметр задает процентное отношение символов (например, элементов остаточных данных) в данных восстановления, которые равны известному декодеру значению (например, нулю). Второй параметр включает в себя информацию, дающую декодеру возможность экстраполировать вероятности для дополнительных символов в данных восстановления. Информация о распределении предоставляет основу для декодирования битовой строки обратно в исходные данные восстановления.
В соответствии с другим вариантом осуществления кодер задает для декодера один параметр для декодирования битовой строки в данные восстановления. В таком варианте осуществления один параметр задает процентное отношение элементов остаточных данных в данных восстановления, которые равны известному декодеру значению (например, нулю). Декодер затем экстраполирует вероятности всех остальных символов на основе стандартных параметров по умолчанию, известных декодеру.
- 3 031450
В соответствии с дополнительными вариантами осуществления каждый из множественных уровней качества в иерархии может конфигурироваться для включения в себя соответствующих данных восстановления для восстановления визуализации сигнала на данном уровне качества. Когда необходимо уменьшить объем кодированных данных, некоторые или все данные восстановления на данном уровне качества можно применить (унаследовать) на следующем, более высоком уровне качества вместо необходимости задавать данные восстановления на каждом уровне качества. Например, энтропийный декодер может конфигурироваться для приема битовой строки, и в ответ на обнаружение условия, например, что энтропийный кодер не формировал никакие параметры распределения вероятностей для данных или что энтропийный кодер на более низком уровне качества явно указывал, что он не будет задавать никакие параметры распределения вероятностей для более высоких уровней качества, энтропийный декодер может использовать параметр (параметры) распределения вероятностей, используемый (используемые) на предыдущем уровне (уровнях) качества, чтобы декодировать данные восстановления.
Варианты осуществления в этом документе дополнительно включают в себя процессор сигналов, сконфигурированный для синтаксического разбора одного или более наборов данных восстановления для данного уровня качества на множественные группировки данных восстановления (фрагментов). Например, при применении фрагментации к данным восстановления, представляющим остаточные данные, сочетание фрагментов задает остаточные данные для регулирования элементов визуализации сигнала на данном уровне качества, например, после повышающей дискретизации с более низкого уровня качества или компенсации движения в известном опорном сигнале. Кодер создает соответствующие параметры распределения вероятностей для символов в каждом из фрагментов. Затем кодер для каждого из фрагментов решает, использовать ли такие параметры распределения вероятностей (которые соответственно понадобилось бы передать декодеру) или параметры распределения вероятностей, автоматически унаследованные от предыдущих (более низких) уровней качества (которые были бы известны декодеру без необходимости передачи дополнительной информации). Кодер затем энтропийно кодирует множественные группировки данных восстановления (фрагментов) в соответствующие битовые строки на основе выбранных соответствующих параметров распределения вероятностей (унаследованных либо новых) для тех группировок. Декодер принимает битовые строки и значения распределения вероятностей в соответствующие фрагменты и инициирует (при желании, параллельное) выполнение множественных энтропийных декодеров для воспроизведения множественных группировок данных восстановления на основе битовых строк и значений распределения вероятностей, ассоциированных с каждым фрагментом. Методика фрагментации, которая обсуждается в этом документе, может использоваться на одном или более уровнях качества в иерархии, чтобы упростить параллельную обработку по энтропийному кодированию/декодированию и восстановлению сигнала.
Эти и другие разновидности вариантов осуществления подробнее обсуждаются ниже.
Как упоминалось выше, отметим, что варианты осуществления в этом документе могут включать в себя конфигурацию из одного или более компьютеризированных устройств, маршрутизаторов, сети, рабочих станций, карманных или переносных компьютеров или т.п. для осуществления и/или поддержки любых или всех операций способа, раскрытых в этом документе. Другими словами, одно или более компьютеризированных устройств или процессоров можно запрограммировать и/или сконфигурировать для работы, которая объясняется в этом документе, чтобы осуществить другие варианты осуществления.
В дополнение к кодированию/декодированию, которое обсуждалась выше, еще одни варианты осуществления в этом документе включают в себя компьютерные программы для выполнения этапов и операций, обобщенных выше и подробно раскрытых ниже. Один такой вариант осуществления выполнен в виде машиночитаемого, аппаратного ресурса хранения (то есть неизменяемых со временем машиночитаемых носителей), включающего в себя логику компьютерной программы, команды и т.п., кодированные на нем, который при выполнении на компьютеризированном устройстве, имеющем один или более процессоров (например, CPU, GPU и т.п.) и соответствующее запоминающее устройство, программирует и/или побуждает процессор (процессоры) выполнять любые из операций, раскрытых в этом документе. Такие средства могут предоставляться в виде программного обеспечения, кода и/или других данных (например, структур данных), организованных или кодированных на машиночитаемом носителе, таком как оптический носитель (например, CD-ROM, DVD, BD и т.п.), гибкий или жесткий диск либо другой носитель, такой как микропрограммное обеспечение или микрокод в одной или более микросхемах ROM, RAM или PROM, или в виде специализированной интегральной схемы (ASIC). Программное обеспечение или микропрограммное обеспечение либо другие такие конфигурации можно установить на компьютеризированное устройство, чтобы побудить компьютеризированное устройство выполнять методики, объясненные в этом документе.
Соответственно один конкретный вариант осуществления настоящего раскрытия изобретения ориентирован на компьютерный программный продукт, который включает в себя машиночитаемый аппаратный носитель информации, имеющий сохраненные на нем команды для поддержки операций по обработке сигналов. Например, в одном варианте осуществления команды при выполнении процессором в соответствующем компьютерном устройстве побуждают процессор создать визуализацию сигнала на первом уровне качества; сформировать по меньшей мере один набор данных восстановления, причем по
- 4 031450 меньшей мере один набор данных восстановления задает то, как на основе визуализации сигнала на первом уровне качества и/или на основе известного опорного сигнала восстановить визуализацию сигнала на втором уровне качества в иерархии, причем второй уровень качества выше первого уровня качества; и использовать энтропийный кодер (например, в качестве неограничивающих примеров, интервальный кодер, кодер Хаффмана, табличный VLC-кодер, кодер по длинам серий) для кодирования разных наборов данных восстановления, причем энтропийный кодер создает для каждого набора кодированное значение или битовую строку, представляющие символы, содержащиеся в данных восстановления.
В другом варианте осуществления, представляющем декодирующую сторону описываемого сейчас варианта осуществления, команды при выполнении процессором в соответствующем компьютерном устройстве побуждают процессор создать визуализацию сигнала на первом уровне качества; принять по меньшей мере один набор кодированных значений, причем по меньшей мере один набор кодированных значений после декодирования задает то, как на основе визуализации сигнала на первом уровне качества и/или на основе известного опорного сигнала восстановить визуализацию сигнала на втором уровне качества в иерархии, причем второй уровень качества выше первого уровня качества; и использовать один или более энтропийных декодеров (например, в качестве неограничивающего примера, интервальный декодер, декодер Хаффмана, табличный VLC-декодер, декодер по длинам серий) для декодирования кодированных значений и воспроизведения разных наборов данных восстановления, которые будут использоваться для восстановления сигнала на втором уровне качества.
Порядок этапов добавлен для ясности. Эти этапы могут выполняться в любом подходящем порядке.
Другие варианты осуществления настоящего раскрытия изобретения включают в себя компьютерные программы, микропрограммное обеспечение и/или соответствующие аппаратные средства для выполнения любого из этапов и операций варианта осуществления способа, обобщенных выше и подробно раскрытых ниже.
Также нужно понимать, что система, способ, устройство, команды на машиночитаемых носителях информации и т.п., которые обсуждаются в этом документе, могут быть воплощены строго в виде компьютерной программы, в виде гибрида программного обеспечения, микропрограммного обеспечения и/или аппаратных средств, или исключительно в виде аппаратных средств, например, в процессоре, или в операционной системе, или в программном приложении и т.п.
Как обсуждалось выше, методики в этом документе хорошо подходят для использования в программных, микропрограммных и/или аппаратных применениях, которые кодируют/декодируют сигналы. В качестве неограничивающих примеров сигналы, кодированные/декодированные с помощью этих методик, могут быть двумерными (например, изображения, видеокадры, двумерные карты движений, тепловые карты и т.п.), трехмерными (например, трехмерные/объемные изображения, голографические изображения, снимки методом компьютерной аксиальной томографии, медицинские/научные изображения, трехмерные карты движений и т.п.) или даже характеризующимися более чем тремя измерениями, контролируемым по времени сигналом (например, звуковым сигналом, видеосигналом и т.п.), и так далее. Для простоты варианты осуществления, проиллюстрированные в этом документе, часто обращаются к изображениям, которые отображаются в виде двумерных плоскостей настроек (например, двумерных изображений в подходящем цветовом пространстве), таким как изображение. Однако такие же идеи и способы также применимы к любому другому типу сигнала. Кроме того, следует отметить, что варианты осуществления в этом документе не ограничиваются использованием в таких применениях, и что обсуждаемые в этом документе методики с тем же успехом хорошо подходят для других применений.
Более того, отметим, что хотя каждый (каждая) из разных признаков, методик, конфигураций и т.п. в этом документе может обсуждаться в разных местах данного раскрытия изобретения, подразумевается, что каждая из идей может выполняться независимо друг от друга или совместно друг с другом. Соответственно одно или более настоящих изобретений, вариантов осуществления и т.п., которые описаны в этом документе, можно воплощать и рассматривать многими разными способами.
Также отметим, что данное предварительное обсуждение вариантов осуществления в этом документе не задает каждый вариант осуществления и/или добавочный элемент новизны настоящего раскрытия изобретения или заявленного изобретения (изобретений). Вместо этого данное краткое описание представляет только общие варианты осуществления и соответствующие моменты новизны по сравнению с традиционными методиками. За дополнительными подробностями и/или возможными видами (перестановками) изобретения (изобретений) читатель направляется в раздел Подробное описание и к соответствующим чертежам настоящего раскрытия изобретения, которые дополнительно обсуждаются ниже.
- 5 031450
Краткое описание чертежей
Вышеупомянутые и другие цели, признаки и преимущества изобретения станут очевидными из нижеследующего, более конкретного описания предпочтительных вариантов осуществления в этом документе, которые проиллюстрированы на прилагаемых чертежах, на которых сходные ссылочные позиции относятся к одинаковым частям на разных представлениях. Чертежи не обязательно представлены в масштабе, вместо этого внимание уделяется иллюстрации вариантов осуществления, принципов, идей и т.п.
Фиг. 1 - примерная схема, иллюстрирующая кодирование/декодирование данных восстановления в соответствии с вариантами осуществления в этом документе.
Фиг. 2 - примерная схема, иллюстрирующая повышение дискретизации сигнала в соответствии с вариантами осуществления в этом документе.
Фиг. 3 - примерная схема, иллюстрирующая обработку в соответствии с вариантами осуществления в этом документе.
Фиг. 4 - примерная схема, иллюстрирующая примерный стандартный способ энтропийного кодирования для кодирования данных восстановления.
Фиг. 5 - примерная схема, иллюстрирующая кодирование и декодирование данных восстановления на множественных уровнях качества в иерархии в соответствии с вариантами осуществления в этом документе.
Фиг. 6 - примерная схема, иллюстрирующая обработку фрагментов данных восстановления с использованием одного или более параллельных процессоров в соответствии с вариантами осуществления в этом документе.
Фиг. 7 - примерная схема, иллюстрирующая обработку множественных фрагментов на данном уровне качества в соответствии с вариантами осуществления в этом документе.
Фиг. 8 - примерная схема, иллюстрирующая квантование данных восстановления на данном уровне качества с использованием множественных квантователей в соответствии с вариантами осуществления в этом документе.
Фиг. 9 - примерная схема, иллюстрирующая квантование данных восстановления с использованием разных настроек квантователя в соответствии с вариантами осуществления в этом документе.
Фиг. 10 - примерная схема, иллюстрирующая синтаксический разбор набора данных восстановления, представляющего остаточные данные, на разные группировки остаточных данных в соответствии с вариантами осуществления в этом документе.
Фиг. 11 - примерная схема, иллюстрирующая создание разных группировок данных восстановления в соответствии с вариантами осуществления в этом документе.
Фиг. 12 - схема, иллюстрирующая примерную архитектуру компьютера для исполнения машинного кода, микропрограммного обеспечения, программного обеспечения, приложений, логики и т.п. в соответствии с вариантами осуществления в этом документе.
Фиг. 13 - примерная блок-схема последовательности операций, иллюстрирующая способ обработки данных восстановления в соответствии с вариантами осуществления в этом документе.
Подробное описание
Фиг. 1 - примерная схема, иллюстрирующая обработку данных восстановления в соответствии с вариантами осуществления в этом документе.
Как показано, процессор 100-1 сигналов понижает дискретизацию сигнала 115 до разных визуализаций на более низких уровнях качества. Вообще, понижающая дискретизация сигнала 115 может включать в себя создание визуализации сигнала на каждом из разных уровней качества и формирование данных восстановления, задающих то, как преобразовать данную визуализацию сигнала на первом уровне качества в визуализацию сигнала на следующем, более высоком уровне качества в иерархии.
Отметим, что значения, ассоциированные с визуализацией сигнала 115 и соответствующей визуализацией сигнала на более низких уровнях качества, могут представлять любой подходящий тип информации в виде данных. В качестве неограничивающих примеров сигнал 115 может быть данными изображения, кадром или полем видео, объемным медицинским изображением, картой движений и т.п., указывающими настройки (например, составляющие цвета, векторы движения, выраженные в прямоугольных или полярных координатах, температуры, величины радиоактивности, значения плотности и т.п.) каждого из множественных элементов сигнала (например, пелов/элементов плоскости, пикселей/элементов изображения, вокселов/объемных элементов изображения и т.п.) в соответствующем изображении.
Каждому элементу в сигнале 115 можно приписать несколько настроек, например одну или более составляющих цвета. В соответствии с таким вариантом осуществления составляющие цвета у элемента в данных сигнала кодируются в соответствии с подходящим стандартом цветового пространства, таким как YUV, RGB, HSV и т.п.
В качестве неограничивающих примеров изображение, представленное сигналом 115, может быть двумерным (например, изображения, видеокадры, двумерные карты движений и т.п.), трехмерным (например, трехмерные/объемные изображения, голографические изображения, снимки методом компьютерной аксиальной томографии, медицинские/научные изображения, трехмерные карты движений и т.п.)
- 6 031450 или даже характеризующимся более чем тремя измерениями. Настройки элементов или компонентов сигнала указывают, как представлять/отображать сигнал для воспроизведения на устройстве.
В соответствии с дополнительными вариантами осуществления сигнал 115 представляет исходный сигнал или сигнал высокого разрешения, включающий в себя множественные элементы. В таком варианте осуществления каждая из визуализаций сигнала (например, визуализация 115-3 сигнала, визуализация 115-2 сигнала, визуализация 115-1 сигнала) может быть похожей на миниатюрное представление исходного сигнала, которое получено из сигнала 115 путем понижения дискретизации до более низкого уровня качества.
Визуализации сигнала 115 на более низких уровнях качества собирают более грубые атрибуты исходного сигнала, а не более подробные, более точные атрибуты исходного сигнала. Подробные, более точные атрибуты появляются в визуализации сигнала на более высоких уровнях качества.
В качестве неограничивающего примера процессор 100-1 сигналов понижает дискретизацию исходного сигнала 115 до визуализации 115-3 сигнала; процессор 100-1 сигналов понижает дискретизацию у визуализации 115-3 сигнала до визуализации 115-2 сигнала; процессор 10 0-1 сигналов понижает дискретизацию у визуализации 115-2 сигнала до визуализации 115-1 сигнала; и так далее до самого нижнего уровня качества. У сигнала 115 можно понижать дискретизацию до любого количества подходящих уровней.
При понижении дискретизации сигнала 115 до каждого более низкого уровня качества процессор 110-1 сигналов может формировать соответствующие данные 150 восстановления. Данные восстановления указывают, как на основе визуализации сигнала на более низком уровне качества и/или известного опорного сигнала (например, в качестве неограничивающего примера, предыдущих кадров в видео) восстановить визуализацию сигнала на следующем, более высоком уровне качества. Например, данные 1503 восстановления указывают, как преобразовать визуализацию 115-2 сигнала в визуализацию 115-3 сигнала; данные 150-2 восстановления указывают, как преобразовать визуализацию 115-1 сигнала в визуализацию 115-2 сигнала; данные 150-1 восстановления указывают, как преобразовать визуализацию 115-0 сигнала в визуализацию 115-1 сигнала; и так далее.
Данные 150 восстановления могут быть любым из множественных разных типов данных, используемых для восстановления сигнала на более высоких уровнях качества. Например, данные восстановления включают в себя любой из одного или более наборов разных типов данных восстановления, таких как параметры операций повышающей дискретизации, информация о порогах квантования, остаточные данные, зоны движения, регулировки в векторах движения, спектральная информация о шуме, метаданные и т.п.
В дополнительных примерных подробностях понижающей дискретизации соответствующего сигнала и создания данных восстановления процессор 100-1 сигналов может конфигурироваться для проверки и создания разных наборов данных восстановления для повышения дискретизации с одного уровня качества на другой.
Данные 150 восстановления могут включать в себя любые подходящие данные для обработки сигналов. Например, каждый набор данных 150 восстановления может включать в себя метаданные, остаточные данные и т.п. Метаданные могут включать в себя такие данные, как набор из одной или более операций повышающей дискретизации, с помощью которых преобразуют визуализацию сигнала с одного уровня качества на следующий; остаточные данные могут указывать такую информацию, как регулировки, которые подлежат выполнению в элементах сигнала на разных уровнях качества (например, после повышающей дискретизации визуализации сигнала на более низком уровне качества или после компенсации движения в известном опорном сигнале на том же уровне качества и т.п.), и так далее.
Процессор 100-1 сигналов может включать в себя энтропийный кодер 140. В одном примерном варианте осуществления энтропийный кодер 140 обрабатывает данные восстановления на каждом из множественных разных уровней качества в соответствующий набор информации 180 об интервальном значении и информации 190 о распределении вероятностей.
Информация 180 об интервальном значении может включать в себя соответствующее интервальное значение (то есть битовую строку, представляющую кодированные символы), сформированное для соответствующего набора данных восстановления. Информация 190 о распределении вероятностей может указывать распределение одного или более символов в соответствующем наборе кодируемых данных 150 восстановления. В одном примерном варианте осуществления можно избежать указания информации 190 о распределении вероятностей для одного или более наборов данных восстановления, то есть для соответствующего набора (наборов) данных восстановления декодеру следует использовать информацию о распределении вероятностей, унаследованную от предыдущих (более низких) уровней качества и/или от известных опорных сигналов.
В одном варианте осуществления энтропийный кодер 140 и декодер 440 могут основываться на методике, известной в данной области техники как интервальное кодирование, которая обладает хорошей производительностью и эффективностью; однако это показано только в качестве неограничивающего примера, и любой подходящий способ энтропийного кодирования или сжатия данных может использоваться для кодирования и декодирования данных 150 восстановления. Независимо от типа используемо
- 7 031450 го энтропийного кодирования способы в этом документе отступают от традиционных систем и способов.
Энтропийный кодер 140 может конфигурироваться для создания соответствующей информации об интервальном значении и информации о распределении вероятностей для каждого из разных типов данных восстановления.
В качестве более конкретного примера процессор 100-1 сигналов использует энтропийный кодер 140, чтобы кодировать данные 150-1 восстановления в информацию 180-1 об интервальном значении и информацию 190-1 о распределении вероятностей. Например, энтропийный кодер 140 анализирует наборы данных 150-1 восстановления для уровня #1 качества, чтобы создать наборы информации 190-1 о распределении вероятностей. Каждый набор информации 190-1 о распределении вероятностей указывает распределение вероятностей у одного или более символов в соответствующем наборе данных 150-1 восстановления.
Энтропийный кодер 140 создает информацию 190-2 о распределении вероятностей для данных 1502 восстановления. Наборы информации 190-2 о распределении вероятностей указывают распределение вероятностей у одного или более символов в наборах данных 150-2 восстановления. В одном примерном варианте осуществления для одного или более наборов данных восстановления на одном или более уровнях качества кодер может решить не создавать информацию о распределении вероятностей, то есть для соответствующего набора (наборов) данных восстановления кодеру и декодеру следует использовать информацию о распределении вероятностей, автоматически унаследованную от более низких уровней качества и/или от известного опорного сигнала.
Процессор 100-1 сигналов использует энтропийный кодер 140 для кодирования каждого набора данных восстановления для каждого уровня качества на основе соответствующей информации о распределении вероятностей. Например, энтропийный кодер 140 использует информацию 190-1 о распределении вероятностей в качестве основы для создания информации 180-1 об интервальном значении (то есть кодированной битовой строки), представляющей данные 150-1 восстановления; энтропийный кодер 140 использует информацию 190-2 о распределении вероятностей в качестве основы для создания информации 180-2 об интервальном значении, представляющей данные 150-2 восстановления; энтропийный кодер 140 использует информацию 190-3 о распределении вероятностей в качестве основы для создания информации 180-3 об интервальном значении, представляющей данные 150-3 восстановления; и так далее.
Процессор 100-1 сигналов сохраняет информацию 180 об интервальном значении и информацию 190 о распределении вероятностей для последующего распространения одному или более целевым ресурсам. В одном варианте осуществления кодированная информация (то есть совокупность битовых строк, в этом документе называемая информацией 180 об интервальном значении и/или информацией 190 о распределении вероятностей) может передаваться по линии связи от источника к потребителю, который включает в себя декодер, для воспроизведения сигнала 115. Как дополнительно обсуждается ниже, воспроизведение сигнала 115 может включать в себя декодирование информации 180 об интервальном значении и информации 190 о распределении вероятностей на каждом из одного или более уровней качества в соответствующие наборы данных восстановления, чтобы восстановить сигнал 115 для воспроизведения. Созданная визуализация сигнала может иметь такое же или другое разрешение и может быть идентичной или почти идентичной исходному кодированному сигналу. Другими словами, для последнего случая кодирование/декодирование, которое обсуждается в этом документе, может быть с потерями или без потерь.
В одном варианте осуществления процессор 100-2 сигналов принимает информацию 180 об интервальном значении (то есть совокупность битовых строк, представляющих кодированные символы) и информацию 190 о распределении вероятностей для соответствующих данных восстановления. Процессор 100-2 сигналов реализует энтропийный декодер 440. Энтропийный декодер 440 использует информацию 190 о распределении вероятностей, чтобы декодировать информацию 180 об интервальном значении в данные восстановления.
Как упоминалось выше, после декодирования процессор 100-2 сигналов использует данные 150-1 восстановления, созданные декодером 440, чтобы преобразовать визуализацию 115-0 сигнала на первом уровне качества в визуализацию 115-1 сигнала на следующем, более высоком уровне качества; процессор 100-2 сигналов использует данные 150-2 восстановления, созданные декодером 440, чтобы преобразовать визуализацию 115-1 сигнала в визуализацию 115-2 сигнала; процессор 100-2 сигналов использует данные 150-3 восстановления, созданные декодером 440, чтобы преобразовать визуализацию 115-2 сигнала в визуализацию 115-3 сигнала; и так далее.
Отметим, что процессору 100-2 сигналов не нужно продолжать процесс восходящего преобразования и визуализации вплоть до наивысшего уровня качества, изначально присутствующего в сигнале и кодированного процессором 100-1 сигналов; фактически, многоуровневое энтропийное кодирование, описанное в этом документе, отступает от традиционных систем и способов, позволяя бюджетным устройствам воспроизведения декодировать и воспроизводить только те части потока двоичных сигналов, с которыми они обучены работать. Такое же преимущество применяется, если линия передачи становится непригодной, временно или окончательно, для переноса количества информации, ассоциированного со
- 8 031450 всем потоком 180 двоичных сигналов; части, которые способны достичь декодера, например 180-1, 180-2 и так далее вплоть до некоторого уровня качества, можно обработать и декодировать независимо процессором 100-2 сигналов, соответственно обеспечивая воспроизведение сигнала 115, хотя и с пониженным качеством, даже когда линия передачи ухудшается.
Снова отметим, что наборы данных восстановления могут включать в себя остаточные данные, указывающие регулировки, которые подлежат выполнению после повышающей дискретизации визуализации сигнала на первом уровне качества до визуализации сигнала на следующем, более высоком уровне качества, или регулировки, которые подлежат выполнению в конкретных элементах сигнала после компенсации движения в известном опорном сигнале в визуализации сигнала на следующем, более высоком уровне качества, или регулировки, которые подлежат выполнению в карте движений, используемой для компенсации движения в известном опорном сигнале, в визуализации сигнала на следующем, более высоком уровне качества, и т.п.
Один вариант осуществления в этом документе включает в себя уменьшение объема данных, необходимых для кодирования информации 190 о распределении вероятностей для каждого набора данных восстановления. Чтобы уменьшить данные, которые нужно передать декодеру 440, энтропийный кодер 140 может конфигурироваться для анализа информации о распределении вероятностей, чтобы включить один или более параметров декодирования, которые будут использоваться соответствующим декодером, чтобы экстраполировать распределение вероятностей для множественных символов в остаточных данных.
Точнее говоря, в одном примерном варианте осуществления кодер 140 анализирует информацию 190 о распределении вероятностей, чтобы включить множественные параметры декодирования, включающие в себя первый параметр и дополнительные параметры. Первый параметр задает процентное отношение элементов в данных восстановления (например, остаточных данных), которым назначается первый символ. Каждый из дополнительных параметров декодирования может указывать вероятность следующего символа, присутствующего в данных восстановления (например, остаточных данных).
В соответствии с другим вариантом осуществления кодер 140, который обсуждается в этом документе, анализирует информацию о распределении вероятностей для соответствующих данных восстановления, чтобы создать первый параметр декодирования и второй параметр декодирования. Первый параметр декодирования задает процентное отношение элементов в остаточных данных, которым назначается первый символ; второй параметр декодирования задает то, как экстраполировать значения распределения вероятностей для каждого из множественных других (дополнительных) символов в данных восстановления (например, остаточных данных). Например, в одном примерном варианте осуществления допустим, что имеется N разных символов в алфавите, используемом для кодирования остаточных данных, и назовем первый параметр декодирования ф, а второй параметр декодирования d2; декодер сможет вычислить все вероятности символов с p(0) по p(N-1) путем решения следующей системы уравнений, с учетом ограничения, что сумма всех вероятностей p(0)-p(N-1) должна быть равна 1:
p(0)=d1, р(k)=p(k-1)xd2 для k в интервале от 2 до N-1.
В соответствии с еще одним вариантом осуществления кодер 140 создает информацию о распределении вероятностей для каждого набора данных восстановления, чтобы включить только один параметр декодирования, указывающий вероятность для первого символа в остаточных данных. Декодер 440 экстраполирует распределения вероятностей для остальных символов на основе заранее установленного набора стандартных параметров, известных декодеру; экстраполяция может быть выполнена путем вычисления или на основе табличных поисков.
В дополнительных вариантах осуществления, которые обсуждаются ниже, чтобы уменьшить объем данных, которые нужно передать декодеру для каждого уровня качества, энтропийный кодер 140 не формирует никакой информации о распределении вероятностей для соответствующих данных восстановления. В таком случае декодер 440 использует (наследует) информацию о распределении вероятностей с более низкого уровня качества для каждого из одного или более высоких уровней качества, чтобы преобразовать информацию об интервальном значении в данные восстановления.
Фиг. 2 - примерная схема, иллюстрирующая обработку сигнала в соответствии с вариантами осуществления в этом документе.
Как обсуждалось ранее, в одном варианте осуществления сигнал 115 может представлять информацию изображения. Предположим в этом неограничивающем примере, что сигнал 115 и соответствующие данные восстановления указывают, как преобразовать или расширить изображение с более низким разрешением до изображения с более высоким разрешением при данном масштабном коэффициенте (например, в этом неограничивающем примере масштабном коэффициенте 2).
Дополнительно предположим, что наборы энтропийно кодированных данных 150 восстановления при декодировании указывают, как управлять настройками элементов изображения на каждом уровне качества. Например, изображение 210-1 на уровне J качества включает в себя поле элементов W изображения; изображение 210-2 на уровне J+1 качества включает в себя поле элементов X изображения; изображение 210-3 включает в себя поле элементов Y изображения и т.п.
- 9 031450
Данные восстановления для уровня J качества указывают, как управлять настройками элементов W изображения на изображении 210-1 (например, визуализацией 115-0 сигнала); данные восстановления для уровня J+1 качества указывают, как преобразовать каждый элемент W изображения на изображении 210-1 в четыре элемента X на изображении 210-2; данные восстановления для уровня J+2 качества указывают, как преобразовать каждый элемент X изображения на изображении 210-2 в четыре элемента Y на изображении 210-3; и так далее. Преобразование может включать в себя повышающую дискретизацию и фильтрацию (также посредством нелинейных операций) с последующим проведением регулировок в элементах.
Фиг. 3 - примерная схема, иллюстрирующая другие примеры обработки данных восстановления в соответствии с вариантами осуществления в этом документе.
Как показано, данные 150-3 восстановления могут включать в себя метаданные 160-3, остаточные данные 170-3 и т.п. Данные 150-2 восстановления могут включать в себя метаданные 160-2, остаточные данные 170-2 и т.п. Данные 150-1 восстановления могут включать в себя метаданные 160-1, остаточные данные 170-1 и т.п.
Энтропийный кодер 140 анализирует метаданные 160-1, чтобы создать информацию 390-1 о распределении вероятностей, которая указывает распределение символов в метаданных 160-1. Энтропийный кодер 140 дополнительно анализирует остаточные данные 170-1, чтобы создать информацию 391-1 о распределении вероятностей, которая указывает распределение символов в остаточных данных 170-1.
Энтропийный кодер 140 анализирует метаданные 160-2, чтобы создать информацию 390-2 о распределении вероятностей, которая указывает распределение символов в метаданных 160-2. Энтропийный кодер 140 дополнительно анализирует остаточные данные 170-2, чтобы создать информацию 391-2 о распределении вероятностей, которая указывает распределение символов в остаточных данных 170-2.
Энтропийный кодер 140 анализирует метаданные 160-3, чтобы создать информацию 390-3 о распределении вероятностей, которая указывает распределение символов в метаданных 160-3. Энтропийный кодер 140 дополнительно анализирует остаточные данные 170-3, чтобы создать информацию 391-3 о распределении вероятностей, которая указывает распределение символов в остаточных данных 170-3; и так далее.
Иногда энтропийный кодер 140 может решить не создавать информацию 39*-* о распределении вероятностей, и в этих случаях для соответствующего набора данных восстановления информация о распределении вероятностей, используемая для кодирования соответствующего интервального значения, будет автоматически унаследована от более низких уровней качества и/или от известного опорного сигнала.
Посредством некоторого подходящего способа энтропийного кодирования (например, интервальное кодирование, кодирование Хаффмана, табличное VLC/кодирование переменной длины, кодирование по длинам серий или другие аналогичные методики) энтропийный кодер 140 создает информацию 380-1 об интервальном значении для метаданных 160-1, информацию 381-1 об интервальном значении для остаточных данных 170-1, информацию 380-2 об интервальном значении для метаданных 160-2, информацию 381-2 об интервальном значении для остаточных данных 170-2, информацию 380-3 об интервальном значении для метаданных 160-3, информацию 381-3 об интервальном значении для остаточных данных 170-3, и так далее.
Энтропийный декодер 440 использует информацию 390-1 о распределении вероятностей для декодирования информации 380-1 об интервальном значении в метаданные 160-1; энтропийный декодер 440 использует информацию 391-1 о распределении вероятностей для декодирования информации 381-1 об интервальном значении в остаточные данные 170-1.
Энтропийный декодер 440 дополнительно использует информацию 390-2 о распределении вероятностей для декодирования информации 380-2 об интервальном значении в метаданные 160-2; энтропийный декодер 440 использует информацию 391-2 о распределении вероятностей для декодирования информации 381-2 об интервальном значении в остаточные данные 170-2.
Энтропийный декодер 440 дополнительно использует информацию 390-3 о распределении вероятностей для декодирования информации 380-3 об интервальном значении в метаданные 160-3; энтропийный декодер 440 использует информацию 391-3 о распределении вероятностей для декодирования информации 381-3 об интервальном значении в остаточные данные 170-3; и так далее.
Иногда энтропийный декодер 440 может не принимать информацию 39*-* о распределении вероятностей, и в этих случаях информация о распределении вероятностей, необходимая для декодирования соответствующего интервального значения, будет автоматически унаследована от более низких уровней качества и/или от известного опорного сигнала.
Фиг. 4 - примерная схема, иллюстрирующая примерный способ энтропийного кодирования для кодирования данных восстановления, то есть отраслевой стандартный способ, известный как интервальное кодирование.
Как показано, сначала энтропийный кодер 140 выбирает интервал, например, от 0 до 1, для подразделения в соответствии с вероятностями символов. Для данной последовательности (например, XXYXZ) символов данных восстановления с известной длиной и известным алфавитом из символов X, Y и Z эн
- 10 031450 тропийный кодер 140 создает информацию о распределении вероятностей. В этом случае информация о распределении вероятностей указывает, что вероятность символа X в последовательности равна 60%, вероятность символа Y в последовательности равна 20% и вероятность символа Z равна 20%. На основе информации о распределении вероятностей и последовательности символов энтропийный кодер 140 в качестве интервального значения создает любое число, включенное в интервал (0,25056, 0,25920). В частности, кодер, вероятно, выберет одно из чисел в интервале, которые требуют минимального количества битов (например, 0,2578125, которое можно точно представить в двоичном виде как 0,0100001, с 7 битами после десятичной запятой).
Используя информацию о распределении вероятностей для той последовательности, декодер способен декодировать интервальное значение (например, двоичное значение 0,0100001, или битовую строку 0100001) обратно в последовательность XXYXZ.
Этот тип интервального кодирования может использоваться для кодирования каждого набора данных восстановления в соответствующее интервальное значение. Однако отметим, что использование 5 символов показано только в качестве неограничивающего примера, и каждый набор данных восстановления, конечно, может включать в себя гораздо больше, нежели последовательность из 5 символов (например, последовательности из десятков тысяч символов, взятых из алфавитов из сотен символов, или даже гораздо больше).
Фиг. 5 - примерная схема, иллюстрирующая использование кодированной информации на множественных уровнях качества в иерархии в соответствии с вариантами осуществления в этом документе.
В этом примере процессор 100-1 сигналов использует энтропийный кодер 140 для кодирования данных восстановления в информацию об интервальном значении и информацию о распределении вероятностей.
Например, энтропийный кодер 140 анализирует данные 150-1 восстановления (например, любой из одного или более разных типов данных восстановления, которые обсуждаются в этом документе) для уровня #1 качества, чтобы создать информацию 490-1 о распределении вероятностей. Информация 490-1 о распределении вероятностей указывает распределение вероятностей у одного или более символов в данных 150-1 восстановления. На основе информации 490-1 о распределении вероятностей и последовательности символов в данных 150-1 восстановления энтропийный кодер создает информацию 480-1 об интервальном значении способом, который обсуждается в этом документе.
Энтропийный декодер 440 использует информацию 490-1 о распределении вероятностей в качестве основы для преобразования информации 480-1 об интервальном значении в данные 150-1 восстановления.
На следующем уровне качества энтропийный кодер 140 анализирует данные 150-2 восстановления для уровня #2 качества, чтобы создать набор информации о распределении вероятностей. В этом примере на основе анализа энтропийный кодер 140 распознает, что информация о распределении вероятностей для данных 150-2 восстановления, по существу, аналогична или равна информации о распределении вероятностей для данных 150-1 восстановления. В таком случае информация 490-1 о распределении вероятностей может повторно использоваться (наследоваться) на уровне #2 качества без необходимости хранить и/или передавать информацию, которая была бы необходима для задания нового распределения вероятностей.
Повторно используя информацию 490-1 о распределении вероятностей на предыдущем уровне #1 качества для элементов на более высоком уровне качества (например, из визуализации 115-1 сигнала в визуализацию 115-2 сигнала), энтропийный кодер 140 формирует информацию 480-2 об интервальном значении. Энтропийный кодер 14 0 сохраняет и передает информацию 480-2 об интервальном значении для уровня #2 качества без соответствующей информации о распределении вероятностей. Другими словами, энтропийный кодер 140 не отправляет набор информации о распределении вероятностей в декодер 440 для информации 480-2 об интервальном значении.
В таком варианте осуществления энтропийный декодер 440 конфигурируется для приема информации 480-2 об интервальном значении. В ответ на обнаружение, что энтропийный кодер 140 не формировал и не отправлял информацию о распределении вероятностей для информации 480-2 об интервальном значении, энтропийный декодер 440 использует информацию 490-1 о распределении вероятностей (например, указывающую распределение вероятностей у одного или более символов в данных 150-1 восстановления), чтобы декодировать информацию 480-2 об интервальном значении в данные 150-2 восстановления. Эта методика уменьшает объем данных, которые нужно передать энтропийному декодеру 440 для восстановления сигнала 115. Один набор информации о распределении вероятностей для данного уровня качества может повторно использоваться на множественных более высоких уровнях качества. Кодер также может задавать, что данный набор информации о распределении вероятностей будет унаследован, без необходимости дополнительных заданий (то есть не будет никаких замен) от текущего уровня качества вплоть до самого верхнего (наивысшего) уровня качества. Это способствует еще одному уменьшению в данных, которые нужно кодировать, сохранять или передавать.
Соответственно варианты осуществления в этом документе могут включать в себя прием интервального значения для заданных данных восстановления; идентификацию распределения вероятностей
- 11 031450 для символов в данных восстановления на предыдущем (например, более низком) уровне качества и использование идентифицированного распределения вероятностей для более низкого уровня качества, чтобы декодировать информацию об интервальном значении в заданные данные восстановления. Как упоминалось, повторное использование (наследование) информации о распределении вероятностей на одном или более других, более высоких уровнях в иерархии уменьшает объем кодированных данных, которые нужно отправлять энтропийному декодеру для восстановления сигнала.
Энтропийный кодер 140 может проанализировать данные 150-3 восстановления и узнать, что информация о распределении вероятностей для символов в данных 150-3 восстановления значительно отличается (например, выше порогового значения) от распределения символов в данных 150-1 восстановления и/или данных 150-2 восстановления. В таком случае энтропийный кодер 140 создает информацию 490-3 о распределении вероятностей. На основе информации 490-3 о распределении вероятностей и последовательности символов в данных 150-3 восстановления энтропийный кодер 140 создает информацию 480-3 об интервальном значении.
Энтропийный декодер 440 конфигурируется для приема информации 480-3 об интервальном значении и информации 490-3 о распределении вероятностей. Энтропийный декодер 440 использует информацию 490-3 о распределении вероятностей в качестве основы для преобразования информации 480-3 об интервальном значении в данные 150-3 восстановления.
В соответствии с альтернативным вариантом осуществления отметим, что энтропийный декодер 440 может конфигурироваться для приема информации об интервальном значении для данного уровня качества. В ответ на обнаружение, что энтропийный кодер 140 не задавал значение распределения вероятностей для заданных данных восстановления, вместо использования унаследованного распределения вероятностей (например, в качестве неограничивающего примера, такой же информации о распределении вероятностей с предыдущего, более низкого уровня качества) энтропийный декодер использует значение распределения вероятностей по умолчанию для одного или более символов, чтобы декодировать интервальное значение в соответствующие данные восстановления.
Еще раз отметим, что выбор интервального кодирования в качестве способа энтропийного кодирования показан в этом документе только в качестве неограничивающего примера как конкретный вариант осуществления, чтобы сделать описание понятнее: любой подходящий способ энтропийного кодирования или сжатия данных типа уже приведенных в этом документе или других, которые можно было бы открыть или разработать в будущем и которые прямо или косвенно применяют вероятности символов, может использоваться с таким же подходом.
Точное указание остаточного распределения для каждого фрагмента каждого кадра/уровня качества.
Допустим, что необходимо кодировать остаточные данные для уровня N качества. Предположим, что у декодера уже есть информация о предыдущем уровне N-1, и он попытался восстановить визуализацию сигнала на уровне N путем применения набора операций масштабирования/фильтров. Чтобы полностью восстановить уровень N, декодеру теперь нужно принять остаточные данные для уровня N.
Кодер может обладать сведениями об исходном уровне N и о внутренних работах декодера (то есть он может предсказать черновик уровня N, который будет вычислять декодер), поэтому кодер 140 может вычислить распределение остатков, которые необходимы для восстановления всего изображения (например, все элементы на уровне N качества) с требуемой близостью/подобием относительно исходного изображения.
Чтобы повысить эффективность, один вариант осуществления в этом документе включает в себя только отправку декодеру вероятности нулевого символа, то есть символа, который чаще всего возникает в остаточных данных (например, когда значение регулировки, необходимое для элемента, равно нулю или около нуля, вплоть до подходящей пороговой величины). Это может быть самым полезным параметром для проведения различия между разным возможным распределением для алфавита символов. Соответственно для каждого фрагмента (который дополнительно обсуждается ниже) каждого уровня качества каждого кадра декодер 440 может конфигурироваться имеющим подходящее распределение вероятностей остатков, позволяющее энтропийному кодированию, реализованному кодером 140, сжимать данные восстановления с заметной эффективностью.
В соответствии с одним вариантом осуществления, как упоминалось выше, конкретное распределение для разных символов в остаточных данных может отправляться, только когда оно необходимо на данном уровне качества. Для последующих уровней качества и, по возможности, последующих кадров декодер по умолчанию использует информацию о распределении вероятностей, которая использовалась для предыдущего уровня качества, пока кодер 140 не заменит последнее значение путем отправки нового значения.
Фиг. 6 - примерная схема, иллюстрирующая обработку фрагментов данных восстановления с использованием одного или более параллельных процессоров в соответствии с вариантами осуществления в этом документе.
Как показано, энтропийный кодер 140 может конфигурироваться для синтаксического разбора каждого набора данных восстановления на множественные группировки данных восстановления. Например,
- 12 031450 энтропийный кодер 140 может конфигурироваться для синтаксического разбора данных 150-1 восстановления на фрагмент 610-1, фрагмент 610-2, фрагмент 610-3, фрагмент 610-4 и так далее. Каждый из фрагментов 610 на уровне #1 качества может включать в себя данные восстановления относительно заранее установленного количества (например, 64) смежных элементов в сигнале.
Энтропийный кодер 140 может конфигурироваться для синтаксического разбора данных 150-2 восстановления на фрагмент 620-1, фрагмент 620-2, фрагмент 620-3, фрагмент 620-4 и так далее. Каждый из фрагментов 620 может включать в себя данные восстановления относительно заранее установленного количества (например, 256) смежных элементов в сигнале.
Отметим, что данные восстановления не являются блочными, или фрагментными, в том смысле, что их можно получить путем обработки всего сигнала, и только после создания они нарезаются на отдельные фрагменты, чтобы сделать возможным параллельное энтропийное кодирование/декодирование.
Фиг. 7 - примерная схема, иллюстрирующая кодирование множественных фрагментов данного набора данных восстановления (например, остаточные данные или регулировки в карте движений для компенсации движения и т.п.) на данном уровне качества в соответствии с вариантами осуществления в этом документе.
Как обсуждалось ранее, энтропийный кодер 140 может конфигурироваться для синтаксического разбора данных восстановления для данного уровня качества на множественные фрагменты. В этом примере данные 150-2 восстановления синтаксически разбираются на данные 150-Т1 восстановления фрагмента, данные 150-Т2 восстановления фрагмента, данные 150-Т3 восстановления фрагмента и так далее.
В соответствии с таким вариантом осуществления энтропийный кодер 140 создает информацию о распределении вероятностей (например, соответствующее значение распределения вероятностей) для одного или более символов в каждой из множественных группировок. Например, энтропийный кодер 140 кодирует каждую из множественных группировок данных восстановления фрагмента в интервальные значения на основе соответствующих значений распределения вероятностей для группировок фрагментов.
Точнее говоря, энтропийный кодер 140 создает информацию 490-Т1 о распределении вероятностей, указывающую распределение одного или более символов в данных 150-Т1 восстановления фрагмента; энтропийный кодер 140 создает информацию 490-Т2 о распределении вероятностей, указывающую распределение одного или более символов в данных 150-Т2 восстановления фрагмента; энтропийный кодер 140 создает информацию 490-Т3 о распределении вероятностей, указывающую распределение одного или более символов в данных 150-Т3 восстановления фрагмента; и так далее.
На основе информации 490-Т1 о распределении вероятностей и последовательности символов в данных 150-Т1 восстановления энтропийный кодер 140 создает информацию 480-Т1 об интервальном значении; на основе информации 490-Т2 о распределении вероятностей и последовательности символов в данных 150-Т2 восстановления энтропийный кодер 140 создает информацию 480-Т2 об интервальном значении; на основе информации 490-Т3 о распределении вероятностей и последовательности символов в данных 150-Т3 восстановления энтропийный кодер 140 создает информацию 480-Т3 об интервальном значении; и так далее.
В одном примерном варианте осуществления каждая из множественных группировок данных восстановления содержит остаточные данные относительно элементов сигнала, включенных во фрагмент. Каждый из элементов остаточных данных указывает регулировку, которая подлежит выполнению в соответствующей части сигнала во время преобразования сигнала с первого уровня качества на второй уровень качества.
Превращение данных восстановления в разные наборы фрагментов, которое обсуждается в этом документе, дает процессору 100-2 сигналов возможность инициировать параллельное выполнение множественных энтропийных декодеров для воспроизведения множественных группировок данных восстановления (например, данные 150-Т1 восстановления фрагмента, данные 150-Т2 восстановления фрагмента, данные 150-Т3 восстановления фрагмента, ...), используя интервальные значения 480-Т и значения 490-Т распределения вероятностей.
Вычисление распределения/гистограммы остатков для глобального сигнала/изображения также может выполняться посредством параллельного алгоритма путем простого объединения распределений/гистограмм, вычисленных на фрагментах.
Фиг. 8 - примерная схема, иллюстрирующая квантование данных восстановления на данном уровне качества с использованием одного или более квантователей с нулевой зоной в соответствии с вариантами осуществления в этом документе. Регулирование и применение разных нулевых зон к данным восстановления (например, остаточным данным) дает возможность каждому из множественных уровней качества данных восстановления дополнительно кодироваться в соответствии с множественными разными подуровнями качества.
Например, кодер формирует данные восстановления, например остаточные данные 170-2. Отметим, что любой тип данных восстановления на любом уровне качества в иерархии может кодироваться в разные подуровни качества с использованием квантования с нулевой зоной, как описано в этом документе.
- 13 031450
Посредством применения разных настроек нулевой зоны (например, с квантователем 810-1, квантователем 810-2, ...) кодер синтаксически разбирает остаточные данные 170-2 (то есть данные восстановления) на множественные группировки, включающие в себя отрегулированные остаточные данные 870-1, отрегулированные остаточные данные 870-2 и так далее. Например, в одном варианте осуществления кодер применяет квантователь 810-1 к остаточным данным 170-2, чтобы создать отрегулированные остаточные данные 870-1; кодер применяет квантователь 810-2 к остаточным данным 170-2, чтобы создать отрегулированные остаточные данные 870-2; и так далее. Квантователь 810-1 обладает эффектом установки любых символов в интервале #1 в некий общий символ, например ноль (отсюда и общее название нулевая зона для интервала); квантователь 810-2 обладает эффектов установки любых символов в интервале #2 в некий общий символ, например ноль; и так далее. Каждый квантователь обеспечивает разный уровень нулевого зонирования (и, возможно, даже разные шаги квантования), приводя к разным подуровням качества.
Энтропийный кодер 140 отдельно кодирует каждую из разных группировок данных восстановления на разных подуровнях качества.
Например, для первой группировки отрегулированных остаточных данных 870-1 энтропийный кодер 140 анализирует отрегулированные остаточные данные 870-1 для создания первого значения распределения вероятностей (например, информации 890-1 о распределении вероятностей) для одного или более символов в отрегулированных остаточных данных 870-1. Энтропийный кодер 140 создает информацию 880-1 об интервальном значении на основе информации 890-1 о распределении вероятностей и настроек элементов отрегулированных остаточных данных 870-1 способом, который обсуждался ранее для других данных восстановления.
Для второй группировки отрегулированных остаточных данных 870-2 энтропийный кодер 140 анализирует отрегулированные остаточные данные 870-2 для создания значения распределения вероятностей (например, информации 890-2 о распределении вероятностей) для одного или более символов в отрегулированных остаточных данных 870-2. Энтропийный кодер 140 создает информацию 880-2 об интервальном значении на основе информации 890-2 о распределении вероятностей и настроек элементов отрегулированных остаточных данных 870-2.
Кодирование каждого из одного или более уровней качества в иерархии с использованием разных квантователей, как обсуждалось выше, полезно во время перегрузки сети, например условий, препятствующих передаче данных восстановления в декодер. Например, в ответ на обнаружение и/или возникновение задержки, препятствующей своевременной передаче или декодированию информации 880-1 об интервальном значении и информации 890-1 о распределении вероятностей (например, информация 8801 об интервальном значении и информация 890-1 о распределении вероятностей включают в себя больший объем данных по сравнению с информацией 880-2 об интервальном значении и информацией 890-2 о распределении вероятностей), варианты осуществления в этом документе включают в себя передачу информации 880-2 об интервальном значении и информации 890-2 о распределении вероятностей в декодер. Декодер 440 декодирует информацию 880-2 об интервальном значении и информацию 890-2 о распределении вероятностей для создания отрегулированных остаточных данных 870-2.
В соответствии с дополнительными вариантами осуществления квантование на каждом из одного или более уровней качества может регулироваться в зависимости от параметра, например доступной полосы пропускания для передачи информации об интервальном значении и информации о распределении вероятностей. То есть большие объемы данных (например, более высокий подуровень качества данных восстановления) могут передаваться в течение моментов, когда доступна большая полоса пропускания; меньшие объемы данных (например, более низкий подуровень качества данных восстановления) могут передаваться в течение моментов, когда полоса пропускания ограничивается.
Таким образом, один вариант осуществления в этом документе включает в себя формирование отрегулированных остаточных данных для восстановления сигнала на данном уровне качества в иерархии. Энтропийный кодер 140 применяет разное квантование к остаточным данным 170-2, чтобы уменьшить энтропию отрегулированных остаточных данных на данном уровне качества перед энтропийным кодированием. Применение квантователя или квантователей к остаточным данным 170-1 облегчает передачу кодированных остаточных данных в соответствии с требуемой скоростью передачи битов (например, Постоянной скоростью передачи битов, CBR), потому что увеличение нулевой зоны (например, с интервала #1 до интервала #2) для данного алфавита символов уменьшает энтропию отрегулированных остаточных данных. То есть информация 880-2 об интервальном значении и информация 890-2 о распределении вероятностей более низкого подуровня качества требуют меньше битов и требуют меньше времени для передачи, чем информация 880-1 об интервальном значении и информация 890-1 о распределении вероятностей.
В соответствии с еще одними вариантами осуществления процессор 100-1 сигналов и/или энтропийный кодер 140 может конфигурироваться для вычисления распределения вероятностей символов в остаточных данных, используемых для проведения регулировок в сигнале на множественных уровнях качества в иерархии. Например, в одном варианте осуществления процессор 100-1 сигналов использует вычисленное распределение вероятностей для данных восстановления, чтобы оценить скорость передачи
- 14 031450 битов у энтропийного кодирования остаточных данных на одном или более уровнях качества на основе первой настройки квантования. В ответ на обнаружение, что оцененная скорость передачи битов для передачи данных восстановления, например остаточных данных, выше требуемого порогового значения, процессор 100-1 сигналов может применить дополнительное/другое квантование к остаточным данным (например, путем увеличения нулевой зоны, которая квантуется в наиболее вероятный символ), чтобы уменьшить энтропию, ассоциированную с остаточными данными, и уменьшить объем данных (например, информацию об интервальном значении и информацию о распределении вероятностей на каждом уровне качества), которые нужно передать декодеру для восстановления сигнала 115. Соответственно процессор 100-1 сигналов может регулировать энтропию остаточных данных на каждом из множественных уровней качества для обеспечения, что кодированные данные могут передаваться получателю в пределах, введенных требуемой скоростью передачи битов.
Фиг. 9 - примерная схема, иллюстрирующая квантование данных восстановления с использованием разных настроек нулевой зоны в соответствии с вариантами осуществления в этом документе.
Как показано, применение квантователя 810-1 преобразует любые символы в остаточных данных 170-2, попадающие в интервал #1 между -2 и 2, в равное нулю значение символа при создании отрегулированных остаточных данных 870-1. Другими словами, квантователь 810-1 устанавливает элементы в остаточных данных 170-2, имеющие значения 1, 2, -2, 1, 2 и 1, в общее значение символа, равное 0, чтобы создать отрегулированные остаточные данные 870-1. В этом конкретном примере другие значения в данных 170-2 восстановления переходят из остаточных данных 170-2 в отрегулированные остаточные данные 870-1; это предназначено лишь для того, чтобы сделать пример удобочитаемым, и следует понимать, что в практических вариантах осуществления изобретения с тем же успехом могли бы квантоваться и другие значения с шагом квантования, равным или отличным от ширины нулевой зоны #1.
Как показано, применение квантователя 810-2 преобразует любые символы в остаточных данных 170-2, попадающие в интервал #2 между -4 и 4, в равное нулю значение символа при создании отрегулированных остаточных данных 870-2. Другими словами, квантователь 810-2 устанавливает элементы в остаточных данных 170-2, имеющие значения 1, 2, -2, -4, 1, 2, 1, 3 и -3, в общее значение символа, равное 0, чтобы создать отрегулированные остаточные данные 870-2. В этом конкретном примере другие значения в данных 170-2 восстановления переходят из остаточных данных 170-2 в отрегулированные остаточные данные 870-2; снова это предназначено лишь для того, чтобы сделать пример удобочитаемым, и следует понимать, что в практических вариантах осуществления изобретения с тем же успехом могли бы квантоваться и другие значения с шагом квантования, равным или отличным от ширины нулевой зоны #2.
Кодер может конфигурироваться для повторения этого процесса для каждого из множественных подуровней качества.
В результате применения разных квантователей с нулевой зоной отрегулированные остаточные данные 870-1 имеют более высокую энтропию, чем отрегулированные остаточные данные 870-2. Соответственно кодированный набор данных для отрегулированных остаточных данных 870-2 меньше, чем кодированный набор данных для отрегулированных остаточных данных 870-1. Как упоминалось выше, во время перегрузки сети может быть выгодно передавать и декодировать отрегулированные остаточные данные 870-2 вместо передачи и декодирования отрегулированных остаточных данных 870-1.
Фиг. 10 - примерная схема, иллюстрирующая синтаксический разбор данных восстановления на разные группировки остаточных данных в соответствии с величиной в соответствии с вариантами осуществления в этом документе.
В этом примерном варианте осуществления кодер синтаксически разбирает данные восстановления, например остаточные данные 170-2, на множественные группировки (например, отрегулированные остаточные данные 1070-1, отрегулированные остаточные данные 1070-2, отрегулированные остаточные данные 1070-3 и т.п.). Посредством квантователя 1010-1 процессор 100-1 сигналов создает отрегулированные остаточные данные 1070-1. В одном варианте осуществления процессор 100-1 сигналов заполняет отрегулированные остаточные данные 1070-1 (например, первую группу данных восстановления), чтобы включить в них элементы остаточных данных 170-2, имеющие значение, которое выходит за пределы первого интервала, например значения меньше -Т3 и значения больше +Т3. Остальные значения (то есть в нулевой зоне между -Т3 и +Т3) устанавливаются в общий символ, например ноль, который станет все более и более вероятным и в силу этого потребует меньше битов для представления при энтропийном кодировании.
Посредством квантователя 1010-2 процессор 100-1 сигналов создает отрегулированные остаточные данные 1070-2. В одном варианте осуществления процессор 100-1 сигналов заполняет отрегулированные остаточные данные 1070-2 (например, вторую группу данных восстановления), чтобы включить в них элементы остаточных данных 170-2, имеющие значение, которое выходит за пределы первого интервала и входит во второй интервал (например, значения, попадающие между -Т3 и -Т2 и между +Т2 и +Т3). Значение, попадающее в нулевую зону между -Т2 и +Т2, устанавливается в общий символ, например ноль; остальные значения (то есть меньше -Т3 и больше +Т3) не кодируются.
Посредством квантователя 1010-3 процессор 100-1 сигналов дополнительно создает отрегулиро
- 15 031450 ванные остаточные данные 1070-3. В одном варианте осуществления процессор 100-1 сигналов заполняет отрегулированные остаточные данные 1070-3 (например, третью группу данных восстановления), чтобы включить в них элементы остаточных данных 170-2, имеющие значение, которое входит в третий интервал (например, значения, попадающие между -Т2 и Т2). Остальные значения не кодируются.
Энтропийный кодер 140 отдельно кодирует отрегулированные остаточные данные 1070.
Например, энтропийный кодер 140 анализирует отрегулированные остаточные данные 1070-1, чтобы создать информацию 1090-1 о распределении вероятностей. На основе информации 1090-1 о распределении вероятностей и последовательности элементов в отрегулированных остаточных данных 1070-1 энтропийный кодер 140 создает информацию 1080-1 об интервальном значении.
Таким образом, энтропийный кодер 140 может конфигурироваться для отдельного кодирования разных группировок отрегулированных остаточных данных 1070 в соответствующую информацию об интервальном значении и информацию о распределении вероятностей. Например, энтропийный кодер 140 кодирует отрегулированные остаточные данные 1070-1 в информацию 1090-1 о распределении вероятностей и информацию 1080-1 об интервальном значении; энтропийный кодер 140 кодирует отрегулированные остаточные данные 1070-2 в информацию 1090-2 о распределении вероятностей и информацию 1080-2 об интервальном значении; энтропийный кодер 140 кодирует отрегулированные остаточные данные 1070-3 в информацию 1090-3 о распределении вероятностей и информацию 1080-3 об интервальном значении; и так далее.
Синтаксический разбор и кодирование данных восстановления в дополняющие группировки, как обсуждалось выше, могут быть полезны в случаях, например, переменной/непредсказуемой вычислительной мощности декодеров или предоставления разного качества разным декодерам (например, услуги с оплатой за просмотр), или во время перегрузки канала передачи между кодером и декодером. Например, в одном варианте осуществления в ответ на возникновение задержки, препятствующей своевременному декодированию всех группировок данных восстановления (например, отрегулированных остаточных данных 1070-1, отрегулированных остаточных данных 1070-2, отрегулированных остаточных данных 1070-3 и так далее) для создания копии исходного сигнала с большей точностью, процессор 100-2 сигналов может инициировать декодирование подмножества кодированных остаточных данных, например только информации 1080-1 об интервальном значении, в отрегулированные остаточные данные 1070-1 на основе информации 1090-1 о распределении вероятностей. В этом случае процессор 100-2 сигналов использует декодированную первую группировку данных восстановления для преобразования визуализации сигнала на первом уровне качества во второй уровень качества.
Фиг. 11 - примерная схема, иллюстрирующая квантование данных восстановления с использованием разных настроек квантователя в соответствии с вариантами осуществления в этом документе. Как показано, кодер 140 синтаксически разбирает отрегулированные остаточные данные 170-2 на отрегулированные остаточные данные 1070-1, отрегулированные остаточные данные 1070-2 и т.п.
Кодер 140 заполняет отрегулированные остаточные данные 1070-1, чтобы включить в них элементы остаточных данных 170-2, имеющие значения, которые выходят за пределы первого интервала, например больше 50 по величине. Все остальные значения устанавливаются в ноль.
Кодер 140 заполняет отрегулированные остаточные данные 1070-2, чтобы включить в них элементы сформированных данных восстановления, имеющие значения, которые входят в интервал величины между 25 и 50. Значения, уже кодированные ненулевым символом в отрегулированных остаточных данных 1070-1, уже не нужно кодировать в отрегулированных остаточных данных 1070-2. Все остальные значения устанавливаются в ноль.
Процессор 100-1 сигналов повторяет этот процесс для каждого интервала.
Как обсуждалось выше, энтропийный кодер 140 отдельно кодирует наборы отрегулированных остаточных данных 1070.
Пример точного управления скоростью передачи битов или кодирование с постоянной скоростью передачи битов.
Кодеки семейства MPEG и другие отраслевые стандартные кодеки не могут кодировать в соответствии с постоянной скоростью передачи битов, при которой кодированный поток двоичных сигналов остается в предопределенном интервале битов в секунду. Это в значительной степени обусловлено сущностью тех алгоритмов. То есть такие кодеки могут определить точное количество битов, необходимое для кодирования изображения, только после завершения полного процесса кодирования. Когда квота битов не выполнена, такие кодеры обязаны перекодировать исходный сигнал множество раз с разными параметрами до тех пор, пока сформированный размер не будет в пределах требуемой пороговой величины от целевого значения. Вообще в ситуациях с постоянной скоростью передачи битов кодер часто запускает кодирование с параметрами сильного сжатия от начала (соответственно часто добиваясь более низкого качества, чем теоретически было бы возможно при доступной скорости передачи битов), чтобы минимизировать риск необходимости перекодировать сигнал множество раз.
В отличие от традиционных кодеков и в соответствии с вариантами осуществления в этом документе можно заранее узнать, сколько битов потребуется для кодирования данных восстановления, поскольку количество битов зависит только от распределения вероятностей у данных восстановления, которое мо
- 16 031450 жет вычисляться до запуска процесса энтропийного кодирования. Также могут использоваться подходящие замены распределения вероятностей, например вероятность нулевого символа в остаточных данных.
Поскольку варианты осуществления в этом документе работают на всем сигнале (не на небольших блоках, например блоках 8x8 пикселей, как в кодеках семейства MPEG или других кодеках частотной области), то можно легко вычислить, сколько битов потребуется для кодирования соответствующих разных данных восстановления. Если невозможно передать или декодировать данные восстановления более высокого разрешения, то данные восстановления можно адаптивно квантовать, как обсуждается в этом документе, чтобы уменьшить энтропию остатков (и соответственно необходимую скорость передачи битов).
Один вариант осуществления в этом документе включает в себя установку значений, которые входят в интервал, примерно в ноль для увеличения вероятности нулевого символа, или увеличение шагов квантования для уменьшения алфавита символов. Уменьшение энтропии этими способами дает возможность передавать кодированный сигнал декодеру в меньшем количестве битов. Целостность восстановленного сигнала может отчасти пострадать из-за квантования остаточных данных (которые используются для создания детальных особенностей сигнала 115 при воспроизведении). Однако не будет остановок при воспроизведении, вызванных перегрузкой. Когда доступна большая полоса пропускания, данные восстановления более высокого качества можно передавать декодеру для восстановления и воспроизведения сигнала.
Фиг. 12 - примерная блок-схема компьютерной системы 800, которая обеспечивает компьютерную обработку в соответствии с вариантами осуществления в этом документе.
Компьютерная система 800 может быть или включать в себя компьютеризированное устройство, например персональный компьютер, схемы обработки, телевизор, устройство воспроизведения, устройство кодирования, рабочую станцию, портативное вычислительное устройство, консоль, сетевой терминал, устройство обработки, сетевое устройство, работающее в качестве коммутатора, маршрутизатора, сервера, клиента и т.п.
Отметим, что нижеследующее обсуждение предоставляет основной вариант осуществления, указывающий, как осуществить функциональные возможности, ассоциированные с процессором 140 сигналов, который обсуждался ранее. Однако следует отметить, что фактическая конфигурация для осуществления операций, которые описаны в этом документе, может меняться в зависимости от соответствующего применения. Другие ресурсы, например декодер 440, можно реализовать посредством соответствующей компьютерной системы, включающей в себя один или более процессоров и аппаратные средства хранения для осуществления декодирования, как обсуждалось в этом документе.
Как показано, компьютерная система 800 из настоящего примера включает в себя межсоединение 811, которое соединяет машиночитаемые носители 812 информации, например неизменяемый со временем тип носителей, машиночитаемый, аппаратный носитель информации и т.п., на котором может храниться и извлекаться цифровая информация. Компьютерная система 800 может дополнительно включать в себя один или более процессоров 813, интерфейс 814 ввода-вывода и интерфейс 817 связи.
Интерфейс 814 ввода-вывода обеспечивает возможность подключения к репозиторию 180 и, при наличии, к экрану дисплея периферийным устройствам 816, таким как клавиатура, компьютерная мышь и т.п.
Машиночитаемый носитель 812 информации (например, аппаратные носители информации) может быть любым подходящим устройством и/или аппаратными средствами, например запоминающим устройством, оптическим запоминающим устройством, жестким диском, гибким диском и т.п. Машиночитаемый носитель информации может быть неизменяемыми со временем носителями информации для хранения команд, ассоциированных с процессором 140 сигналов. Команды исполняются с помощью соответствующего ресурса, например процессора 140 сигналов, для выполнения любой из операций, которые обсуждаются в этом документе.
Интерфейс 817 связи дает возможность компьютерной системе 800 взаимодействовать по сети 190 для извлечения информации из удаленных источников и взаимодействовать с другими компьютерами, коммутаторами, клиентами, серверами и т.п. Интерфейс 814 ввода-вывода также дает возможность процессору 813 извлекать или сделать попытку извлечения сохраненной информации из репозитория 180.
Как показано, машиночитаемые носители 812 информации могут кодироваться с помощью приложения 140-1 процессора сигналов, исполняемого процессором (процессорами) 813 в виде процесса 140-2 процессора сигналов.
Отметим, что компьютерная система 800 или кодер 140 также могут быть воплощены включающими в себя машиночитаемый носитель 812 информации (например, аппаратные носители информации, неизменяемые со временем носители информации и т.п.) для хранения данных и/или логических команд.
Компьютерная система 800 может включать в себя один или более процессоров 813 для исполнения таких команд и осуществления операций, которые обсуждаются в этом документе. Соответственно при исполнении код, ассоциированный с приложением 140-1 процессора сигналов, может поддерживать обработку функциональных возможностей, которые обсуждаются в этом документе. Как упоминалось, процессор 140 сигналов может конфигурироваться для поддержки кодирования и/или декодирования.
- 17 031450
Во время работы одного варианта осуществления процессор (процессоры) 813 обращается к машиночитаемым носителям 812 информации посредством использования межсоединения 811, чтобы запустить, прогнать, исполнить, интерпретировать или иным образом выполнить команды приложения 140-1 процессора сигналов, сохраненные на машиночитаемом носителе 812 информации. Исполнение приложения 140-1 процессора сигналов порождает функциональные возможности обработки в процессоре (процессорах) 813. Другими словами, процесс 140-2 кодера, ассоциированный с процессором (процессорами) 813, представляет одну или более особенностей исполнения приложения 140-1 процессора сигналов в рамках процессора (процессоров) 813 в компьютерной системе 800.
Специалисты в данной области техники поймут, что компьютерная система 800 может включать в себя другие процессы и/или программные и аппаратные компоненты, например операционную систему, которая управляет распределением и использованием аппаратных ресурсов обработки для исполнения приложения 140-1 процессора сигналов.
В соответствии с другими вариантами осуществления отметим, что компьютерная система может относиться к любому из различных типов устройств, включая, но не только, персональную компьютерную систему, настольный компьютер, переносной компьютер, ноутбук, нетбук, мэйнфрейм, карманный компьютер, рабочую станцию, сетевой компьютер, сервер приложений, запоминающее устройство, бытовую электронику, например фотокамеру, видеокамеру, телевизионную приставку, мобильное устройство, игровую приставку, карманное игровое устройство, периферийное устройство, например коммутатор, модем, маршрутизатор или, в общем, любой тип вычислительного или электронного устройства.
Фиг. 13 - примерная блок-схема 1300 последовательности операций, иллюстрирующая способ формирования и использования энтропийного кодирования в соответствии с вариантами осуществления в этом документе.
На этапе 1310 процессор 100-1 сигналов создает визуализацию сигнала на первом уровне качества.
На этапе 1320 процессор 100-1 сигналов формирует данные восстановления, причем данные восстановления задают то, как преобразовать визуализацию сигнала на первом уровне качества в визуализацию сигнала на втором уровне качества в иерархии, причем второй уровень качества выше первого уровня качества.
На этапе 1330 процессор 100-1 сигналов использует энтропийный кодер для кодирования данных восстановления.
Энтропийный кодер 140 создает поток двоичных сигналов (например, информацию об интервальном значении), представляющий данные восстановления.
Снова отметим, что методики в этом документе хорошо подходят для использования при обработке и восстановлении сигналов. Однако следует отметить, что варианты осуществления в этом документе не ограничиваются использованием в таких применениях, и что обсуждаемые в этом документе методики с тем же успехом хорошо подходят для других применений.
На основе изложенного в этом документе описания изложены многочисленные характерные подробности, чтобы обеспечить всестороннее понимание заявленного предмета изобретения. Тем не менее, специалистам в данной области техники будет понятно, что заявленный предмет изобретения может быть осуществлен на практике без этих характерных подробностей. В иных случаях способы, устройства, системы и т.п., которые были бы известны среднему специалисту, не описаны подробно, чтобы не затруднять понимание заявленного предмета изобретения. Некоторые части подробного описания представлены в виде алгоритмов или символических представлений операций над информационными битами или двоичными цифровыми сигналами, сохраненными в запоминающем устройстве вычислительной системы, например запоминающем устройстве компьютера. Эти алгоритмические описания или представления являются примерами методик, используемых средними специалистами в области обработки данных, чтобы выразить суть их работы другим специалистам в данной области техники. Алгоритм, как описано в этом документе и в целом, рассматривается как самосогласованная последовательность операций или аналогичная обработка, приводящая к нужному результату. В этом смысле операции или обработка включают в себя физическое манипулирование с физическими величинами. Как правило, хотя и не обязательно, такие величины могут принимать форму электрических или магнитных сигналов, допускающую хранение, передачу, объединение, сравнение или иную манипуляцию. Доказано, что иногда удобно, в основном ввиду распространенного использования, ссылаться на такие сигналы, как на биты, данные, значения, элементы, символы, знаки, члены, числа, цифры или т.п. Однако следует понимать, что все эти и аналогичные термины должны ассоциироваться с подходящими физическими величинами и всего лишь являются удобными обозначениями. Пока специально не указано иное, как очевидно из нижеследующего обсуждения, принимается во внимание, что по всему этому описанию изобретения обсуждения, использующие такие термины, как обработка, вычисление, расчет, определение или т.п., ссылаются на действия или процессы вычислительной платформы, например компьютера или аналогичного электронного вычислительного устройства, которая манипулирует или преобразует данные, представленные в виде физических электронных или магнитных величин в запоминающих устройствах, регистрах или других устройствах хранения информации, устройствах передачи или устройствах отображения вычислительной платформы.
- 18 031450
Несмотря на то что данное изобретение подробно показано и описано со ссылками на его предпочтительные варианты осуществления, специалистам в данной области техники будет понятно, что в нем могут быть выполнены различные изменения в форме и деталях без отклонения от сущности и объема настоящей заявки, которые определены прилагаемой формулой изобретения. Планируется, что такие разновидности будут охвачены объемом настоящей заявки. По существу, предшествующее описание вариантов осуществления настоящей заявки не планируется быть ограничивающим. Точнее, любые ограничения изобретения представляются в нижеследующей формуле изобретения.
Claims (22)
- ФОРМУЛА ИЗОБРЕТЕНИЯ1. Способ кодирования сигнала в многоуровневой иерархии качества сигнала, включающей в себя, по меньшей мере, первый и второй уровни качества, содержащий этапы, на которых обрабатывают процессором сигналов вторую визуализацию сигнала на втором уровне качества для создания первой визуализации сигнала на первом уровне качества и формирования по меньшей мере одного набора данных восстановления, причем по меньшей мере один набор данных восстановления задает то, как на основе первой визуализации сигнала на первом уровне качества и/или на основе доступных опорных сигналов восстановить вторую визуализацию сигнала на втором уровне качества в иерархии, причем второй уровень качества выше первого уровня качества; и выполняют энтропийным кодером синтаксический разбор упомянутого по меньшей мере одного набора данных восстановления на множественные группировки, включающие в себя, по меньшей мере, первую группировку данных восстановления и вторую группировку данных восстановления и заранее установленное количество смежных элементов в сигнале, причем упомянутые группировки синтаксически разбирают для упомянутого первого уровня качества и заранее установленное количество смежных элементов в сигнале устанавливают в зависимости от уровня качества;заполняют энтропийным кодером первую группировку данных восстановления посредством сохранения значения/символа всех элементов сформированного набора данных восстановления, имеющих значение/символ, которое входит в первый интервал значений/символов, и посредством установки всех остальных элементов в значение/символ по умолчанию;заполняют энтропийным кодером вторую группировку данных восстановления посредством сохранения значения/символа всех элементов сформированного набора данных восстановления, имеющих значение/символ, которое входит во второй интервал значений/символов, и посредством установки всех остальных элементов в значение/символ по умолчанию; и заполняют энтропийным кодером дополнительные группировки в соответствии с тем же способом в соответствии с дополнительными интервалами значений/символов, причем количество элементов в каждом интервале значений/символов зависит от уровня качества; и кодируют энтропийным кодером упомянутый по меньшей мере один набор данных восстановления, причем энтропийный кодер для упомянутого по меньшей мере одного набора данных восстановления создает кодированное значение или битовую строку, представляющие символы, содержащиеся в данных восстановления, причем этап, на котором кодируют энтропийным кодером упомянутый по меньшей мере один набор данных восстановления, дополнительно содержит этап, на котором энтропийным кодером отдельно энтропийно кодируют первую группировку данных восстановления, вторую группировку данных восстановления и любую другую дополнительную группировку данных восстановления.
- 2. Способ по п.1, в котором этап, на котором используют энтропийный кодер, включает в себя этапы, на которых анализируют каждый набор данных восстановления, чтобы создать один или более параметров декодирования с помощью информации о распределении вероятностей, причем информация о распределении вероятностей указывает вероятность по меньшей мере одного символа в алфавите символов, используемом тем набором данных восстановления; и сохраняют кодированное значение или битовую строку и информацию о распределении вероятностей для последующего декодирования кодированного значения или битовой строки обратно в данные восстановления.
- 3. Способ по п.2, дополнительно содержащий этапы, на которых реализуют энтропийный декодер для декодирования для каждого набора данных восстановления кодированного значения или битовой строки и информации о распределении вероятностей в данные восстановления и используют наборы данных восстановления, созданные декодером, для восстановления визуализации сигнала на втором уровне качества на основе визуализации сигнала на первом уровне качества и/или на основе доступных опорных сигналов.
- 4. Способ по п.1, в котором один из наборов данных восстановления включает в себя остаточные данные, указывающие регулировки, которые подлежат выполнению после повышающей дискретизации визуализации сигнала на первом уровне качества до визуализации сигнала на втором уровне качества и в котором этап, на котором используют энтропийный кодер, включает в себя этап, на котором создают по- 19 031450 меньшей мере один параметр декодирования, который подлежит использованию соответствующим энтропийным декодером для экстраполяции распределения вероятностей для множественных символов в остаточных данных.
- 5. Способ по п.2, в котором по меньшей мере один параметр декодирования включает в себя первый параметр и дополнительные параметры, причем первый параметр задает процентное отношение элементов в данных восстановления, которым назначается первый символ, дополнительные параметры указывают вероятности множественных дополнительных символов в данных восстановления.
- 6. Способ по п.2, в котором по меньшей мере один параметр декодирования включает в себя первый параметр и второй параметр, причем первый параметр задает процентное отношение элементов в данных восстановления, которым назначается первый символ, второй параметр указывает декодеру, как экстраполировать значения распределения вероятностей для множественных других символов в данных восстановления.
- 7. Способ по п.2, в котором по меньшей мере один параметр декодирования включает в себя только одиночный параметр, указывающий вероятность для первого символа в данных восстановления, причем энтропийный декодер экстраполирует распределение вероятностей для множественных других символов на основе заранее установленного набора стандартных параметров, известных энтропийному декодеру, который преобразует кодированное значение или битовую строку обратно в данные восстановления.
- 8. Способ по п.1, в котором для одного или более наборов данных восстановления этап, на котором используют энтропийный кодер, включает в себя этапы, на которых синтаксически разбирают каждый набор данных восстановления на множественные группировки данных восстановления;используют энтропийный кодер для создания соответствующей информации о распределении вероятностей для символов, присутствующих в каждой из множественных группировок; и используют энтропийный кодер для кодирования множественных группировок каждого набора данных восстановления в кодированные значения или битовые строки на основе соответствующей информации о распределении вероятностей для группировок.
- 9. Способ по п.8, в котором каждая из множественных группировок данных восстановления является фрагментом элементов остаточных данных относительно конкретной части сигнала, причем каждый из элементов остаточных данных указывает регулировку, которая подлежит выполнению в соответствующем элементе сигнала после повышающей дискретизации сигнала с первого уровня качества до второго уровня качества, и способ дополнительно содержит этап, на котором инициируют параллельное выполнение множественных энтропийных декодеров для воспроизведения множественных группировок данных восстановления, используя для каждой группировки конкретные кодированные значения или битовые строки и значения распределения вероятностей.
- 10. Способ по п.1, в котором данные восстановления являются первым массивом наборов данных восстановления, причем способ дополнительно содержит этапы, на которых формируют второй массив наборов данных восстановления, причем второй массив наборов данных восстановления задает то, как на основе визуализации сигнала на втором уровне качества восстановить визуализацию сигнала на третьем уровне качества в иерархии, причем третий уровень качества выше второго уровня качества; и анализируют каждый набор данных восстановления во втором массиве, чтобы создать один или более параметров декодирования на основе информации о распределении вероятностей, причем информация о распределении вероятностей указывает вероятность по меньшей мере одного символа в алфавите символов, используемом тем набором данных восстановления; и используют энтропийный кодер для кодирования второго массива наборов данных восстановления, причем энтропийный кодер для каждого набора данных восстановления создает кодированное значение или битовую строку, представляющие данные, на основе информации о распределении вероятностей, созданной для того набора.
- 11. Способ по п.1, в котором данные восстановления являются первым массивом наборов данных восстановления, причем способ дополнительно содержит этапы, на которых формируют второй массив наборов данных восстановления, причем второй массив наборов данных восстановления задает то, как на основе визуализации сигнала на втором уровне качества и/или на основе доступных опорных сигналов восстановить визуализацию сигнала на третьем уровне качества в иерархии, причем третий уровень качества выше второго уровня качества; и используют энтропийный кодер для кодирования второго массива наборов данных восстановления, причем энтропийный кодер для каждого набора данных восстановления создает кодированное значение или битовую строку, представляющие данные, на основе информации о распределении вероятностей у соответствующего набора данных в первом массиве наборов данных восстановления.
- 12. Способ по п.1, в котором данные восстановления являются первым массивом наборов данных восстановления, причем способ дополнительно содержит этапы, на которых принимают кодированные значения или битовые строки для второго массива наборов данных восстановления, причем массив наборов данных восстановления указывает то, как на основе визуализации- 20 031450 сигнала на втором уровне качества и/или на основе доступных опорных сигналов восстановить визуализацию сигнала на третьем уровне качества, причем третий уровень качества выше второго уровня качества;принимают параметры декодирования и идентифицируют распределения вероятностей для символов в каждом наборе данных восстановления второго массива и используют идентифицированные распределения вероятностей для декодирования кодированных значений или битовых строк для второго массива наборов данных восстановления во второй массив наборов данных восстановления.
- 13. Способ по п.12, дополнительно содержащий этапы, на которых принимают кодированные значения или битовые строки, представляющие второй массив наборов данных восстановления; и для каждого набора данных восстановления в ответ на обнаружение, что энтропийный кодер не отправлял информацию о распределении вероятностей для одного или более наборов данных или энтропийный кодер ранее задавал, что он не отправит параметры распределения вероятностей для одного или более наборов данных, используют информацию о распределении вероятностей, декодированную для соответствующего набора (наборов) в первом массиве данных восстановления, чтобы энтропийно декодировать кодированное значение или битовую строку, представляющие набор данных.
- 14. Способ по п.3, дополнительно содержащий этапы, на которых принимают кодированное значение или битовую строку для каждого набора данных восстановления и в ответ на обнаружение, что энтропийный кодер не отправлял конкретную информацию о распределении вероятностей символов в том наборе данных восстановления, используют значение распределения вероятностей по умолчанию для символов, чтобы декодировать кодированное значение или битовую строку в данные восстановления.
- 15. Способ по п.1, в котором этап, на котором отдельно энтропийно кодируют, дополнительно содержит этапы, на которых для первой группировки:анализируют первую группировку данных восстановления, чтобы создать один или более параметров декодирования с помощью информации о распределении вероятностей, причем информация о распределении вероятностей указывает распределение вероятностей у символов в алфавите, используемом первой группировкой; и используют энтропийный кодер для создания первого кодированного значения или битовой строки на основе первой информации о распределении вероятностей, причем первое кодированное значение или битовая строка представляют первую группировку данных восстановления;для второй группировки:анализируют вторую группировку данных восстановления, чтобы создать один или более параметров декодирования с помощью информации о распределении вероятностей, причем информация о распределении вероятностей указывает распределение вероятностей у символов в алфавите, используемом второй группировкой; и используют энтропийный кодер для создания второго кодированного значения или битовой строки на основе второй информации о распределении вероятностей, причем второе кодированное значение или битовая строка представляют вторую группировку данных восстановления;для любой другой дополнительной группировки:анализируют конкретную группировку данных восстановления, чтобы создать один или более параметров декодирования с помощью информации о распределении вероятностей, причем информация о распределении вероятностей указывает распределение вероятностей у символов в алфавите, используемом конкретной группировкой; и используют энтропийный кодер для создания кодированного значения или битовой строки для группировки на основе соответствующей информации о распределении вероятностей, причем кодированное значение или битовая строка представляют конкретную группировку данных восстановления.
- 16. Способ по п.15, дополнительно содержащий этапы, на которых для конкретных наборов данных восстановления в ответ на возникновение задержки, препятствующей своевременному энтропийному декодированию всех группировок данных восстановления, инициируют энтропийное декодирование только некоторых из кодированных значений или битовых строк в соответствующие группировки данных восстановления, причем упомянутое энтропийное декодирование каждой группировки данных восстановления основано на соответствующих параметрах декодирования, указывающих информацию о распределении вероятностей; и используют энтропийно декодированные группировки данных восстановления вместе с другими, уже декодированными наборами данных восстановления, чтобы на основе визуализации сигнала на первом уровне качества и/или на основе доступных опорных сигналов восстановить второй уровень качества.
- 17. Способ по п.15, дополнительно содержащий этап, на котором для конкретных наборов данных- 21 031450 восстановления в ответ на конкретные потребности или на возникновение задержки, препятствующей своевременному энтропийному кодированию, или на недоступность необходимой информационной полосы пропускания для передачи всех группировок данных восстановления передают декодеру только некоторые из кодированных значений или битовых строк, соответствующих соответствующим группировкам данных восстановления, вместе с любыми параметрами декодирования, указывающими информацию о распределении вероятностей.
- 18. Способ по п.1, дополнительно содержащий этапы, на которых формируют остаточные данные для восстановления сигнала на данном уровне качества в иерархии; и оценивают на основе показателя энтропии количество битов, необходимых для энтропийного кодирования остаточных данных; и применяют квантователь к остаточным данным для уменьшения энтропии остаточных данных на данном уровне качества перед энтропийным кодированием, причем применение квантователя к остаточным данным упрощает передачу кодированных остаточных данных в соответствии с требуемой скоростью передачи битов.
- 19. Способ по п.1, дополнительно содержащий этапы, на которых вычисляют распределение вероятностей символов в остаточных данных, используемых для проведения регулировок в сигнале на множественных уровнях качества в иерархии;используют распределение вероятностей для оценки скорости передачи битов в энтропийном кодировании остаточных данных на основе первой настройки квантователя;в ответ на обнаружение, что оцененная скорость передачи битов выше требуемого порогового значения, применяют дополнительное квантование к остаточным данным, чтобы уменьшить энтропию, ассоциированную с остаточными данными; и используют энтропийный кодер для кодирования квантованных остаточных данных.
- 20. Способ по п.1, в котором энтропийный кодер является интервальным кодером.
- 21. Машиночитаемое аппаратное средство хранения, имеющее сохраненные на нем команды, причем команды при выполнении устройством обработки, содержащим, по меньшей мере, процессор сигналов и энтропийный кодер, побуждают устройство обработки выполнить операции по обработке процессором сигналов второй визуализации сигнала на втором уровне качества для создания первой визуализации сигнала на первом уровне качества и формирования по меньшей мере одного набора данных восстановления, причем по меньшей мере один набор данных восстановления задает то, как на основе первой визуализации сигнала на первом уровне качества и/или на основе доступных опорных сигналов восстановить вторую визуализацию сигнала на втором уровне качества в иерархии, причем второй уровень качества выше первого уровня качества; и выполнению энтропийным кодером синтаксического разбора упомянутого по меньшей мере одного набора данных восстановления на множественные группировки, включающие в себя, по меньшей мере, первую группировку данных восстановления и вторую группировку данных восстановления и заранее установленное количество смежных элементов в сигнале, причем упомянутые группировки синтаксически разбираются для упомянутого первого уровня качества и заранее установленное количество смежных элементов в сигнале устанавливается в зависимости от уровня качества;заполнению энтропийным кодером первой группировки данных восстановления посредством сохранения значения/символа всех элементов сформированного набора данных восстановления, имеющих значение/символ, которое входит в первый интервал значений/символов, и посредством установки всех остальных элементов в значение/символ по умолчанию;заполнению энтропийным кодером второй группировки данных восстановления посредством сохранения значения/символа всех элементов сформированного набора данных восстановления, имеющих значение/символ, которое входит во второй интервал значений/символов, и посредством установки всех остальных элементов в значение/символ по умолчанию;заполнению энтропийным кодером дополнительных группировок в соответствии с тем же способом в соответствии с дополнительными интервалами значений/символов, причем количество элементов в каждом интервале значений/символов зависит от уровня качества; и кодированию энтропийным кодером упомянутого по меньшей мере одного набора данных восстановления, причем энтропийный кодер для упомянутого по меньшей мере одного набора данных восстановления создает кодированное значение или битовую строку, представляющие символы, содержащиеся в данных восстановления, причем операция по кодированию энтропийным кодером упомянутого по меньшей мере одного набора данных восстановления дополнительно содержит отдельное энтропийное кодирование энтропийным кодером первой группировки данных восстановления, второй группировки данных восстановления и любой другой дополнительной группировки данных восстановления.
- 22. Компьютерная система для кодирования сигнала в многоуровневой иерархии качества сигнала, содержащая процессор;энтропийный кодер;- 22 031450 запоминающее устройство, которое хранит команды, ассоциированные с приложением, исполняемым процессором; и межсоединение, соединяющее процессор и запоминающее устройство, предоставляющее компьютерной системе возможность исполнять приложение и выполнять операции по обработке процессором второй визуализации сигнала на втором уровне качества для создания первой визуализации сигнала на первом уровне качества и формирования по меньшей мере одного набора данных восстановления, причем по меньшей мере один набор данных восстановления задает то, как на основе первой визуализации сигнала на первом уровне качества и/или на основе доступных опорных сигналов восстановить вторую визуализацию сигнала на втором уровне качества в иерархии, причем второй уровень качества выше первого уровня качества; и выполнению энтропийным кодером синтаксического разбора упомянутого по меньшей мере одного набора данных восстановления на множественные группировки, включающие в себя, по меньшей мере, первую группировку данных восстановления и вторую группировку данных восстановления и заранее установленное количество смежных элементов в сигнале, причем упомянутые группировки синтаксически разбираются для упомянутого первого уровня качества и заранее установленное количество смежных элементов в сигнале устанавливается в зависимости от уровня качества;заполнению энтропийным кодером первой группировки данных восстановления посредством сохранения значения/символа всех элементов сформированного набора данных восстановления, имеющих значение/символ, которое входит в первый интервал значений/символов, и посредством установки всех остальных элементов в значение/символ по умолчанию;заполнению энтропийным кодером второй группировки данных восстановления посредством сохранения значения/символа всех элементов сформированного набора данных восстановления, имеющих значение/символ, которое входит во второй интервал значений/символов, и посредством установки всех остальных элементов в значение/символ по умолчанию; и заполнению энтропийным кодером дополнительных группировок в соответствии с тем же способом в соответствии с дополнительными интервалами значений/символов, причем количество элементов в каждом интервале значений/символов зависит от уровня качества; и кодированию энтропийным кодером упомянутого по меньшей мере одного набора данных восстановления, причем энтропийный кодер для упомянутого по меньшей мере одного набора данных восстановления создает кодированное значение или битовую строку, представляющие символы, содержащиеся в данных восстановления, причем операция по кодированию энтропийным кодером упомянутого по меньшей мере одного набора данных восстановления дополнительно содержит отдельное энтропийное кодирование энтропийным кодером первой группировки данных восстановления, второй группировки данных восстановления и любой другой дополнительной группировки данных восстановления.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/188,226 US8531321B1 (en) | 2011-07-21 | 2011-07-21 | Signal processing and inheritance in a tiered signal quality hierarchy |
PCT/IB2012/053725 WO2013011495A2 (en) | 2011-07-21 | 2012-07-20 | Signal processing and inheritance in a tiered signal quality hierarchy |
Publications (2)
Publication Number | Publication Date |
---|---|
EA201490313A1 EA201490313A1 (ru) | 2014-06-30 |
EA031450B1 true EA031450B1 (ru) | 2019-01-31 |
Family
ID=46851541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EA201490313A EA031450B1 (ru) | 2011-07-21 | 2012-07-20 | Способ и компьютерная система кодирования сигнала в многоуровневой иерархии качества сигнала |
Country Status (12)
Country | Link |
---|---|
US (1) | US8531321B1 (ru) |
EP (1) | EP2735160A2 (ru) |
JP (1) | JP6351040B2 (ru) |
KR (1) | KR102134705B1 (ru) |
CN (1) | CN103918261B (ru) |
AU (1) | AU2012285359B2 (ru) |
CA (1) | CA2842551C (ru) |
EA (1) | EA031450B1 (ru) |
IL (1) | IL230271A (ru) |
MX (1) | MX2014000708A (ru) |
WO (1) | WO2013011495A2 (ru) |
ZA (1) | ZA201400471B (ru) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8977065B2 (en) * | 2011-07-21 | 2015-03-10 | Luca Rossato | Inheritance in a tiered signal quality hierarchy |
WO2013171168A1 (en) * | 2012-05-14 | 2013-11-21 | Luca Rossato | Encoding and decoding based on blending of sequences of samples along time |
US9578339B2 (en) * | 2013-03-05 | 2017-02-21 | Qualcomm Incorporated | Parallel processing for video coding |
US9215468B1 (en) * | 2014-08-07 | 2015-12-15 | Faroudja Enterprises, Inc. | Video bit-rate reduction system and method utilizing a reference images matrix |
US9510787B2 (en) * | 2014-12-11 | 2016-12-06 | Mitsubishi Electric Research Laboratories, Inc. | Method and system for reconstructing sampled signals |
CN105791866B (zh) * | 2014-12-24 | 2018-10-30 | 北京数码视讯科技股份有限公司 | 视频编码中间数据获取方法、设备及*** |
PL3284255T3 (pl) | 2015-04-13 | 2023-10-30 | V-Nova International Limited | Kodowanie wielu sygnałów z docelową szybkością transmisji danych sygnału w zależności od informacji o złożoności |
GB2547934B (en) * | 2016-03-03 | 2021-07-07 | V Nova Int Ltd | Adaptive video quality |
GB2553556B (en) * | 2016-09-08 | 2022-06-29 | V Nova Int Ltd | Data processing apparatuses, methods, computer programs and computer-readable media |
GB2554065B (en) * | 2016-09-08 | 2022-02-23 | V Nova Int Ltd | Data processing apparatuses, methods, computer programs and computer-readable media |
EP3496403A1 (en) | 2017-12-06 | 2019-06-12 | V-Nova International Limited | Hierarchical data structure |
EP3496404A1 (en) * | 2017-12-06 | 2019-06-12 | V-Nova International Limited | Image processing |
EP3721625A1 (en) | 2017-12-06 | 2020-10-14 | V-Nova International Limited | Methods and apparatuses for hierarchically encoding and decoding a bytestream |
GB2573486B (en) * | 2017-12-06 | 2022-12-21 | V Nova Int Ltd | Processing signal data using an upsampling adjuster |
US11177823B2 (en) * | 2018-05-21 | 2021-11-16 | Google Llc | Data compression by local entropy encoding |
US10411731B1 (en) * | 2018-09-24 | 2019-09-10 | Advanced Micro Devices, Inc. | Device and method of compressing data using tiered data compression |
GB201817783D0 (en) * | 2018-10-31 | 2018-12-19 | V Nova Int Ltd | Methods,apparatuses, computer programs and computer-readable media for processing configuration data |
GB201817780D0 (en) * | 2018-10-31 | 2018-12-19 | V Nova Int Ltd | Methods,apparatuses, computer programs and computer-readable media for processing configuration data |
US11310516B2 (en) * | 2018-12-21 | 2022-04-19 | Hulu, LLC | Adaptive bitrate algorithm with cross-user based viewport prediction for 360-degree video streaming |
CN114503573A (zh) | 2019-03-20 | 2022-05-13 | 威诺瓦国际有限公司 | 低复杂性增强视频编码 |
KR20220036948A (ko) | 2019-07-05 | 2022-03-23 | 브이-노바 인터내셔널 리미티드 | 비디오 코딩에서 잔차의 양자화 |
CN112887713B (zh) * | 2019-11-30 | 2022-06-28 | 华为技术有限公司 | 图片压缩、解压缩方法和装置 |
US11082168B1 (en) | 2020-03-19 | 2021-08-03 | Western Digital Technologies, Inc. | Entropy driven endurance for normalized quality of service |
GB2598701B (en) | 2020-05-25 | 2023-01-25 | V Nova Int Ltd | Wireless data communication system and method |
CN116807414B (zh) * | 2023-08-31 | 2023-12-29 | 慧创科仪(北京)科技有限公司 | 用于近红外脑功能成像信号质量的评估方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4122440A (en) * | 1977-03-04 | 1978-10-24 | International Business Machines Corporation | Method and means for arithmetic string coding |
US20080211901A1 (en) * | 2005-07-20 | 2008-09-04 | Mehmet Reha Civanlar | System and method for scalable and low-delay videoconferencing using scalable video coding |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3581935B2 (ja) * | 1993-10-18 | 2004-10-27 | 三菱電機株式会社 | 高能率符号化装置 |
JP4160689B2 (ja) * | 1998-11-10 | 2008-10-01 | 株式会社リコー | 算術符号化装置および算術復号装置 |
AU2003272833A1 (en) * | 2002-09-17 | 2004-04-08 | Vladimir Ceperkovic | Fast codec with high compression ratio and minimum required resources |
CN1890980A (zh) * | 2003-12-08 | 2007-01-03 | 皇家飞利浦电子股份有限公司 | 具有盲区的空间可缩放压缩方案 |
JP4835855B2 (ja) * | 2004-10-07 | 2011-12-14 | 日本電気株式会社 | 動画像符号化の装置、方法及びプログラムと、動画像復号の装置方法及びプログラム |
KR100636229B1 (ko) * | 2005-01-14 | 2006-10-19 | 학교법인 성균관대학 | 신축형 부호화를 위한 적응적 엔트로피 부호화 및 복호화방법과 그 장치 |
US7876833B2 (en) * | 2005-04-11 | 2011-01-25 | Sharp Laboratories Of America, Inc. | Method and apparatus for adaptive up-scaling for spatially scalable coding |
US9319700B2 (en) * | 2006-10-12 | 2016-04-19 | Qualcomm Incorporated | Refinement coefficient coding based on history of corresponding transform coefficient values |
CN101669366A (zh) * | 2006-10-16 | 2010-03-10 | 韩国电子通信研究院 | 具有自适应参考精细粒度信噪比可伸缩性和精细粒度信噪比可伸缩性运动细化机制的可伸缩视频编码编码器及其方法 |
US20080120676A1 (en) * | 2006-11-22 | 2008-05-22 | Horizon Semiconductors Ltd. | Integrated circuit, an encoder/decoder architecture, and a method for processing a media stream |
-
2011
- 2011-07-21 US US13/188,226 patent/US8531321B1/en active Active
-
2012
- 2012-07-20 CA CA2842551A patent/CA2842551C/en active Active
- 2012-07-20 AU AU2012285359A patent/AU2012285359B2/en active Active
- 2012-07-20 EP EP12759220.2A patent/EP2735160A2/en not_active Ceased
- 2012-07-20 EA EA201490313A patent/EA031450B1/ru not_active IP Right Cessation
- 2012-07-20 MX MX2014000708A patent/MX2014000708A/es active IP Right Grant
- 2012-07-20 JP JP2014520783A patent/JP6351040B2/ja active Active
- 2012-07-20 CN CN201280036119.3A patent/CN103918261B/zh active Active
- 2012-07-20 KR KR1020147004587A patent/KR102134705B1/ko active IP Right Grant
- 2012-07-20 WO PCT/IB2012/053725 patent/WO2013011495A2/en active Application Filing
-
2013
- 2013-12-31 IL IL230271A patent/IL230271A/en active IP Right Grant
-
2014
- 2014-01-21 ZA ZA2014/00471A patent/ZA201400471B/en unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4122440A (en) * | 1977-03-04 | 1978-10-24 | International Business Machines Corporation | Method and means for arithmetic string coding |
US20080211901A1 (en) * | 2005-07-20 | 2008-09-04 | Mehmet Reha Civanlar | System and method for scalable and low-delay videoconferencing using scalable video coding |
Non-Patent Citations (4)
Title |
---|
A. FULDSETH (CISCO): "Replacing slices with tiles for high level parallelism", 4. JCT-VC MEETING; 95. MPEG MEETING; 20-1-2011 - 28-1-2011; DAEGU;(JOINT COLLABORATIVE TEAM ON VIDEO CODING OF ISO/IEC JTC1/SC29/WG11AND ITU-T SG.16 ); URL: HTTP://WFTP3.ITU.INT/AV-ARCH/JCTVC-SITE/, no. JCTVC-D227, JCTVC-D227, 15 January 2011 (2011-01-15), XP030008267 * |
MARPE D., SCHWARZ H., WIEGAND T.: "Context-based adaptive binary arithmetic coding in the H.264/AVC video compression standard", IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, US, vol. 13, no. 7, 1 July 2003 (2003-07-01), US, pages 620 - 636, XP011099255, ISSN: 1051-8215, DOI: 10.1109/TCSVT.2003.815173 * |
SCHWARZ H. ET AL.: "SVC overview", 21. JVT MEETING; 78. MPEG MEETING; 20-10-2006-27-10-2006; HANGZHOU.CN; (JOINT VIDEO TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16), no. JVT-U145, 20 October 2006 (2006-10-20), XP030006791, ISSN: 0000-0405, abstract; fig. 6, 13, p. 3, right-hand column * |
SHIN, I.-H. LEE, Y.-L. PARK, H.W.: "Rate control using linear rate-@r model for H.264", SIGNAL PROCESSING. IMAGE COMMUNICATION., ELSEVIER SCIENCE PUBLISHERS, AMSTERDAM., NL, vol. 19, no. 4, 1 April 2004 (2004-04-01), NL, pages 341 - 352, XP004495309, ISSN: 0923-5965, DOI: 10.1016/j.image.2003.12.002 * |
Also Published As
Publication number | Publication date |
---|---|
WO2013011495A2 (en) | 2013-01-24 |
KR20140051345A (ko) | 2014-04-30 |
BR112014001208A2 (pt) | 2017-02-21 |
CA2842551A1 (en) | 2013-01-24 |
ZA201400471B (en) | 2015-09-30 |
CN103918261B (zh) | 2018-01-19 |
IL230271A (en) | 2017-09-28 |
AU2012285359A1 (en) | 2014-02-13 |
US8531321B1 (en) | 2013-09-10 |
CA2842551C (en) | 2019-11-26 |
CN103918261A (zh) | 2014-07-09 |
WO2013011495A3 (en) | 2013-04-25 |
AU2012285359A2 (en) | 2014-10-23 |
JP2014521276A (ja) | 2014-08-25 |
JP6351040B2 (ja) | 2018-07-04 |
AU2012285359B2 (en) | 2017-10-19 |
EA201490313A1 (ru) | 2014-06-30 |
MX2014000708A (es) | 2014-06-23 |
KR102134705B1 (ko) | 2020-07-17 |
EP2735160A2 (en) | 2014-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EA031450B1 (ru) | Способ и компьютерная система кодирования сигнала в многоуровневой иерархии качества сигнала | |
KR102287947B1 (ko) | 영상의 ai 부호화 및 ai 복호화 방법, 및 장치 | |
JP5957561B2 (ja) | 大きいサイズの変換単位を用いた映像符号化、復号化方法及び装置 | |
CN106576172B (zh) | 用于编码/解码图像的方法和使用该方法的装置 | |
Zhao et al. | Multiple description convolutional neural networks for image compression | |
US10616603B2 (en) | Methods and apparatuses for encoding and decoding digital images through superpixels | |
US20220385911A1 (en) | Use of embedded signalling for backward-compatible scaling improvements and super-resolution signalling | |
JP2013179707A (ja) | 大きいサイズの変換単位を利用した映像符号化、復号化方法及び装置 | |
Öztürk et al. | Performance evaluation of jpeg standards, webp and png in terms of compression ratio and time for lossless encoding | |
Jeon et al. | Context-based trit-plane coding for progressive image compression | |
US10536697B2 (en) | Method for re-encoding image and apparatus therefor | |
Naaz et al. | Implementation of hybrid algorithm for image compression and decompression | |
Rudolph et al. | Progressive Coding for Deep Learning based Point Cloud Attribute Compression | |
Zha | Progressive lossless image compression using image decomposition and context quantization | |
Singhal | Image and video compression using deep network | |
Sahu et al. | Hybrid Compression of Medical Images Based on Huffman and LPC For Telemedicine Application | |
Wang et al. | Distributed Depth Video Coding Based on Compressive Sensing and Gaussian Mixture Models | |
BR112014001208B1 (pt) | Processamento de sinal e herança em uma hierarquia de qualidade de sinal enfileirada | |
Lee et al. | A new adaptive colorization filter for Video decompression | |
Shiwani | A PREDICTIVE CODING METHOD FOR LOSSLESS COMPRESSION OF IMAGES | |
Ramya et al. | A Survey on Data Hiding and Compression Schemes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Lapse of a eurasian patent due to non-payment of renewal fees within the time limit in the following designated state(s) |
Designated state(s): KG TM |
|
PC4A | Registration of transfer of a eurasian patent by assignment |