Кодер, декодер и способ работы с использованием интерполяции

1. Способ кодирования данных (D1) в кодере (20) для формирования соответствующих кодированных данных (Е2), включающий:
(a) прием входных кодируемых данных (D1) и анализ субфрагментов входных кодируемых данных (D1) для определения одного или более способов кодирования, которые будут применены для кодирования этих субфрагментов, при этом эти один или более способов кодирования включают по меньшей мере один алгоритм, использующий интерполяцию, причем информацию об этом по меньшей мере одном алгоритме включают в кодированные данные (Е2);
(b) вычисление одного или более параметров интерполяции для упомянутого одного или более способов кодирования, использующих по меньшей мере один алгоритм, использующий интерполяцию, при этом параметры интерполяции представляют значения данных из субфрагмента данных (D1), кодируемого при помощи по меньшей мере одного алгоритма, использующего интерполяцию, причем упомянутые один или более параметров интерполяции содержат меньшее количество значений данных, чем количество значений данных в субфрагменте входных данных (D1), который они представляют;
(c) кодирование остальных субфрагментов кодируемых данных (D1) с использованием одного или более способов кодирования; и
(d) комбинирование данных, сформированных на шагах (а), (b) и (с), для формирования кодированных данных (Е2).
2. Способ по п. 1, отличающийся тем, что упомянутый по меньшей мере один способ кодирования, использующий по меньшей мере один алгоритм, использующий интерполяцию, включает по меньшей мере одно из следующего: способ скольжения, способ масштабирования, пирамидный способ, полиномиальный способ, кусочно-постоянный способ, четырехточечный способ масштабирования, пятиточечный пирамидный способ, способ Хилла и 9-точечный способ масштабирования.
3. Способ по п. 1, отличающийся тем, что упомянутый по меньшей мере один алгоритм, использующий интерполяцию, или параметр интерполяции для использования с упомянутым по меньшей мере одним алгоритмом, использующим интерполяцию, включает по меньшей мере одну из:
(i) кусочно-постоянной;
(ii) линейной;
(iii) полиномиальной; и
(iv) сплайновой интерполяций.
4. Способ по п. 1, включающий выполнение над данными, скомбинированными на шаге (d), одной или более процедур сжатия данных для формирования кодированных данных (Е2), при этом одна или более процедур сжатия данных включают по меньшей мере одно из следующего: SRLE, RLE, PCM, DPCM, О-дельта, модификатор энтропии (ЕМ), VLC, диапазонное кодирование, арифметическое кодирование, кодирование Хаффмана, DCT, вэйвлет-преобразование, палитра, векторное квантование (VQ), база данных, DC, скользящее преобразование, многоуровневое преобразование, масштабирование, линейное преобразование, экстраполяция и интерполяция.
5. Способ по п. 1, отличающийся тем, что на шаге (с) способ включает использование по меньшей мере одного из следующего: DCT-кодирование, вейвлет-кодирование, кодирование с палитрой, кодирование с векторным квантованием (VQ), кодирование с использованием базы данных, кодирование с РСМ-модуляцией, кодирование с DPCM-модуляцией, кодирование с DC-преобразованием, диапазонное кодирование, RLE-кодирование, скользящее кодирование, многоуровневое кодирование, масштабируемое кодирование, линейное кодирование и кодирование с экстраполяцией.
6. Способ по п. 1, отличающийся тем, что по меньшей мере один алгоритм интерполяции, применяемый для кодирования, включает выполнение интерполяции на основе информации, предоставляемой из базы данных.
7. Способ по п. 1, включающий вычисление ошибки между данными, входящими в состав кодируемых данных (1) и восстановленными данными, сформированными на основе кодированных данных (Е1) на шаге (d), при этом способ включает добавление и/или предоставление данных ошибки, с кодированием или без кодирования, в кодированные данных (Е2).
8. Способ по п. 7, включающий встраивание ошибки в кодированные данные (Е2) на основе заданного блока данных или заданного пакета данных в зависимости от характера контента, содержащегося в заданном блоке данных или заданном пакете данных.
9. Способ по п. 8, включающий выбор одного или более алгоритмов для кодирования данных (D1), при этом кодируемые данные (D1) включают по меньшей мере одно из следующего: одномерные данные (1D), звуковые данные, данные ЭКГ, сейсмологические данные, двумерные данные (2D), данные изображений, двумерные видеоданные, двумерные графические данные, трехмерные данные изображений, трехмерные видеоданные, трехмерные данные изображений.
10. Способ по п. 1, отличающийся тем, что на шаге (d) способ содержит включение в кодированные данные (Е2) информации, связанной по меньшей мере с одним из следующего: значения данных, значения градиентов, способы интерполяции, биты подтверждения предсказания, позиции значений данных, значения дельта, порядки сканирования, способы кодирования.
11. Способ по п. 10, включающий передачу одного или более параметров в кодированных данных (Е2) в виде их собственных сжатых потоков данных.
12. Способ по п. 10, включающий квантование по меньшей мере одного из одного или более параметров для обеспечения улучшенного сжатия кодированных данных (Е2).
13. Способ декодирования кодированных данных (Е2) в декодере (30) для формирования соответствующих декодированных выходных данных (D3), включающий:
(a) прием кодированных данных (Е2) с целью определения одного или более параметров кодирования, включенных в кодированные данные (Е2), и одного или более способов кодирования, к которым они относятся, при этом упомянутый по меньшей мере один способ кодирования включает по меньшей мере один способ кодирования, использующий один или более алгоритм, использующий интерполяцию;
(b) извлечение значений данных для субфрагментов кодированных данных (Е2) при помощи применения обратных алгоритмов к одному или более параметрам и связанным с ними данным, присутствующим в кодированных данных (Е2) и восстановление значений данных субфрагментов данных, причем количество восстановленных значений данных превышает количество значений кодированных данных; и
(c) комбинирование восстановленных значений данных субфрагментов для формирования декодированных данных (D3).
14. Способ по п. 13, отличающийся тем, что способ, использующий один или более один алгоритм, использующий интерполяцию, включает применение способов, обратных по меньшей мере одному из следующего: способ скольжения, способ масштабирования, пирамидный способ, полиномиальный способ, кусочно-постоянный способ, четырехточечный способ масштабирования, пятиточечный пирамидный способ, способ Хилла и 9-точечный способ масштабирования.
15. Способ по п. 13, отличающийся тем, что упомянутый по меньшей мере один алгоритм, использующий интерполяцию, или по меньшей мере один параметр интерполяции для использования с упомянутым по меньшей мере одним алгоритмом, использующим интерполяцию, включает по меньшей мере одну из:
(i) кусочно-постоянной;
(ii) линейной;
(iii) полиномиальной; и
(iv) сплайновой интерполяций.
16. Способ по п. 13, включающий перед шагом (а) декомпрессию кодированных данных (Е2) с использованием процедуры, обратной по меньшей мере одному из следующего: SRLE, RLE, PCM, DPCM, О-дельта, модификатор энтропии (ЕМ), VLC, диапазонное кодирование, арифметическое кодирование, кодирование Хаффмана, DCT, вэйвлет-преобразование, палитра, векторное квантование (VQ), база данных, DC, скользящее преобразование, многоуровневое преобразование, масштабирование, линейное преобразование, экстраполяция и интерполяция.
17. Способ по п. 13, отличающийся тем, что по меньшей мере один алгоритм интерполяции, применяемый для декодирования, включает выполнение интерполяции на основе информации, предоставляемой из базы данных.
18. Кодер (20) для кодирования данных (D1) для формирования соответствующих кодированных данных (Е2), выполненный с возможностью применения способа по п. 1 для кодирования данных (D1) для формирования кодированных данных (Е2).
19. Декодер (30) для декодирования кодированных данных (Е2) для формирования соответствующих декодированных данных (D3), выполненный с возможностью применения способа по п. 11 для декодирования кодированных данных (Е2) для формирования соответствующих декодированных данных (D3).
20. Кодек (10), включающий по меньшей мере один кодер (20) по п. 18 для формирования кодированных данных (Е2) и по меньшей мере один декодер (30) по п. 19 для декодирования кодированных данных (Е2).
21. Программный продукт, записанный на машиночитаемый носитель (60, 70) для хранения данных и исполняемый на вычислительном оборудовании (40, 50) для исполнения способа по п. 1 и/или способа по п. 13.