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

Изобретение относится к кодированию с предсказанием информационного сигнала. Технический результат - повышение точности кодирования с предсказанием информационного сигнала и обеспечение возможности лучшего поддержания качества сигнала. Для этого кодер для кодирования с предсказанием информационного сигнала, имеющего последовательность значений сигнала (s(n)), содержит блок предсказания для выполнения адаптивного предсказания в зависимости от последовательности значений сигнала (s(n)) и в зависимости от одного или более весовых значений ωi, чтобы получить значения предсказанного сигнала (s'(n)), в котором блок предсказания выполнен с возможностью сбрасывания весовых значений в моменты времени, которые зависят от значений информационного сигнала, и в котором блок предсказания выполнен с возможностью адаптирования весовых значений к сигналу между последующими сбросами. 15 н. и 11 з.п. ф-лы, 13 ил.

 

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ

Настоящее изобретение в основном относится к кодированию с предсказанием информационного сигнала, и в частности, к кодеру и способу для кодирования с предсказанием сигнала, к декодеру и способу для декодирования кодированного с предсказанием сигнала, к системе и способу для кодирования с предсказанием сигнала и для декодирования кодированной с предсказанием версии сигнала, и к кодированному с предсказанием информационному сигналу. Дополнительные варианты осуществления настоящего изобретения относятся к схеме предварительного кодирования с переменными моментами времени сброса.

УРОВЕНЬ ТЕХНИКИ ИЗОБРЕТЕНИЯ

Кодер с предсказанием (передатчик) кодирует сигналы посредством предсказания текущего значения сигнала, который должен быть кодирован, с использованием предыдущих или предшествующих значений сигнала. Это предсказание или предположение иногда совершается посредством взвешенной суммы предыдущих значений сигнала. Веса предсказания или коэффициенты предсказания регулируются так, что разность между предсказанным сигналом и действительным сигналом минимизируется предварительно определенным образом. Коэффициенты предсказания, например, оптимизируются по отношению к квадрату ошибки предсказания. Только разности между предсказанными значениями и действительными значениями сигнала передаются декодеру или приемнику. Эти разности также называются остатками или ошибками предсказания. Значение действительного сигнала может быть реконструировано в приемнике посредством использования того же блока предсказания (например, идентичного блоку предсказания, используемому в кодере) и посредством прибавления предсказанного значения, полученного тем же образом, что и в кодере, к ошибке предсказания, переданной кодером.

В случае ошибок передачи, т.е. если возникают некорректно переданные разности или ошибки предсказания, предсказание более не будет одинаковым на сторонах передатчика и приемника. Некорректные значения декодированного сигнала будут реконструированы из-за некорректно переданных ошибок предсказания на стороне приемника.

Для того чтобы получить ресинхронизацию или регулировку между передатчиком или приемником, веса предсказания сбрасываются в предопределенное состояние на сторонах передатчика и приемника в моменты времени, равные для обоих сторон, процесс может также называться сбросом.

В документе US 7386446 B2 описано, что если алгоритм адаптивного предсказания, управляемый посредством коэффициента скорости, исходит из того, чтобы оперировать с первой скоростью адаптации и первой точностью адаптации и сопутствующей первой скоростью предсказания в случае, когда коэффициент скорости имеет первое значение, и оперировать со второй, по сравнению с первой, более низкой скоростью адаптации, и второй, но по сравнению с первой, более высокой точностью, в случае, когда параметр скорости имеет второе значение, причем длительности адаптации, наблюдающиеся после моментов времени сброса, где ошибки предсказания сначала увеличиваются из-за еще неадаптированных коэффициентов, могут быть уменьшены посредством установки параметра скорости в первое значение и через некоторое время во второе значение. После того как параметр скорости был снова установлен во второе значение после предварительно определенной продолжительности после моментов времени сброса, ошибки предсказания и, таким образом, остатки, которые должны быть переданы, являются более оптимизированными или меньшими, чем было бы возможно с значениями первого параметра скорости.

В документе S. Wabnik, G. Schuller, F. Kraemer: "An Error Robust Ultra Low Delay Audio Coder Using an MA Prediction Model", ICASSP 2009, апрель 19-24 2009, Тайбэй, Тайвань, описаны две структуры предсказания для кодирования с предсказанием воспринимаемого аудио в контексте схемы кодирования со сверхнизкой задержкой (ULD). Одна структура основана на распространенной AR-модели прохождения сигналов, ведущей к IIR-блоку предсказания в декодере. Другая структура основана на MA-модели прохождения сигналов, ведущей к FIR-блоку предсказания в декодере.

В документе S. Wabnik, Gerald Schuller, J. Hirschfeld, U. Kraemer: "Packet Loss Concealment in Predictive Audio Coding", 2005, IEEE IEEE Workshop on Applications of Signal Processing Audio and Acoustics, Mohonk Mountain House, New Paltz, Нью-Йорк, 16-19 октября 2005, описаны несколько стратегий сокрытия потерь пакетов в контексте предиктивного аудиокодера с низкой задержкой.

Для того чтобы облегчить понимание кодирования с предсказанием информационных сигналов также сделана ссылка на следующие документы:

J. Makhoul, Linear Prediction: A Tutorial Review, PROCEEDINGS OF THE IEEE, том 63, № 4, апрель 1975; АН H. Sayed: "Fundamentals of Adaptive Filtering", Wiley-IEEE Press, 2003; и Simon S. Haykin, "Adaptive Filter Theory", Prentice Hall International, 2001.

Однако основная проблема известных решений состоит в том, что из-за таких сбросов ошибки предсказания будут увеличиваться в моменты времени сброса. Большая ошибка предсказания, в свою очередь, влечет за собой увеличенную требуемую битовую скорость для передачи. В случае, когда доступна только ограниченная величина битовой скорости, как, например при 'Кодировании с постоянной битовой скоростью', качество сигнала будет уменьшено (например, из-за искажений или шума).

Вследствие этого, задачей настоящего изобретения является предоставить схему кодирования с предсказанием и/или декодирования, которая обеспечивает возможность улучшенного соотношения между надежностью предсказания, требуемой битовой скоростью и качеством сигнала.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

Эта задача решается посредством кодера по п. 1 формулы изобретения, декодера по одному из п. с 13 по 15, системы по п. 16, кодированного сигнала по п. 17, способа для кодирования с предсказанием по п. 19, способа для декодирования по одному из п. с 20 по 22, способа для кодирования с предсказанием и декодирования по п. 23 или компьютерной программы по п. 24.

Согласно варианту осуществления настоящего изобретения, кодер для кодирования с предсказанием сигнала, имеющего последовательность значений сигнала, содержит блок предсказания. Блок предсказания сконфигурирован для выполнения адаптивного предсказания в зависимости от сигнала и в зависимости от одного или более весовых значений, для получения значений предсказанного сигнала. Здесь блок предсказания выполнен с возможностью сбрасывания весовых значений в моменты времени, которые зависят от сигнала. Более того, блок предсказания выполнен с возможностью адаптирования весовых значений к сигналу между последующими сбросами.

Основной идеей, лежащей в основе настоящего изобретения, является то, что хорошая эффективность предсказания может быть достигнута, если адаптивное предсказание выполняется в зависимости от сигнала и в зависимости от одного или более весовых значений, и если весовые значения сбрасываются в моменты времени, которые зависят от сигнала. Таким образом, увеличение ошибки предсказания, возникающей в результате сброса, и/или увеличение битовой скорости, требуемой для кодирования ошибки предсказания с желаемой точностью, может быть предотвращено или по меньшей мере уменьшено, тем самым обеспечивая возможность лучшего поддержания качества сигнала. В качестве альтернативы, или в дополнение, возможно выбирать момент времени сброса так, чтобы было возможно кодировать даже сравнительно большую ошибку предсказания с хорошей точностью при данных ограничениях битовой скорости.

Согласно дополнительным вариантам осуществления, блок предсказания выполнен с возможностью выполнения сбросов весовых значений в моменты времени, которые адаптированы к сигналу.

В дополнение, кодер может быть выполнен с возможностью выборочно выбирать моменты времени сброса для сбрасывания весовых значений. Это по существу обеспечивает возможность того, что восприятие искажений, вызванных сбросами в выбранные моменты времени сброса, будет меньше, чем восприятие искажений, которые были бы вызваны сбрасыванием весовых значений в разные моменты времени.

Согласно дополнительным вариантам осуществления, кодер выполнен с возможностью генерирования остаточного сигнала на основе разностей между значениями сигнала и значениями предсказанного сигнала. В результате, предоставленный битовый поток может содержать кодированные значения остаточного сигнала, кодированные с переменной битовой скоростью. В дополнение, блок предсказания может быть выполнен с возможностью выполнения сбросов весовых значений в переменные моменты времени. Таким образом, может гарантироваться, что сбросы будут выполнены в моменты времени, в которые существует резерв битовой скорости, который больше, чем предварительно определенный уровень резерва битовой скорости, или равен ему. Вследствие этого, возможно кодировать значения остаточного сигнала с сравнительно высокой точностью, применяя доступный резерв битовой скорости. Следовательно, слышимые искажения могут удерживаться небольшими.

Дополнительные варианты осуществления настоящего изобретения предоставляют декодеры для декодирования кодированного с предсказанием сигнала, имеющего последовательность значений остаточного сигнала.

Согласно дополнительному варианту осуществления настоящего изобретения, предоставляется система для кодирования с предсказанием сигнала, имеющего последовательность значений сигнала, и для декодирования кодированной с предсказанием версии сигнала, имеющего последовательность значений остаточного сигнала.

Дополнительные варианты осуществления настоящего изобретения предоставляют способы для кодирования с предсказанием сигнала и для декодирования кодированной с предсказанием версии сигнала.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

В дальнейшем варианты осуществления настоящего изобретения будут разъяснены со ссылкой на прилагаемые чертежи, на которых:

на Фиг. 1 показана блок-схема варианта осуществления кодера для кодирования с предсказанием сигнала;

на Фиг. 2 показана блок-схема дополнительного варианта осуществления кодера для кодирования с предсказанием сигнала со сбрасыванием весовых значений в зависимости от текущего резерва битовой скорости;

на Фиг. 3a показана блок-схема дополнительного варианта осуществления кодера для кодирования с предсказанием сигнала со сбрасыванием весовых значений на основе анализа сигнала;

на Фиг. 3b показана блок-схема дополнительного варианта осуществления кодера для кодирования с предсказанием сигнала со сбрасыванием весовых значений на основе анализа остаточного сигнала;

на Фиг. 4 показана блок-схема дополнительного варианта осуществления кодера для кодирования с предсказанием сигнала с фильтрующей структурой и блоком предоставления для предоставления весовых значений;

на Фиг. 5 показана схематичная иллюстрация концепции для определения момента времени сброса для сбрасывания весовых значений в зависимости от текущего резерва битовой скорости согласно варианту осуществления настоящего изобретения;

на Фиг. 6 показана схематичная иллюстрация концепции для выборочного определения моментов времени сброса для сбрасывания весовых значений на основе анализа сигнала согласно дополнительному варианту осуществления настоящего изобретения;

на Фиг. 7a проиллюстрировано отрицательное воздействие выполнения сброса в пределах примерного хорошо предсказуемого сигнала;

на Фиг. 7b проиллюстрировано отрицательное воздействие выполнения сброса в пределах дополнительного примерного хорошо предсказуемого сигнала;

на Фиг. 8 показана блок-схема варианта осуществления декодера для декодирования кодированного с предсказанием сигнала с использованием информация сброса;

на Фиг. 9 показана блок-схема дополнительного варианта осуществления декодера для декодирования кодированного с предсказанием сигнала с блоком определения момента времени сброса на основе анализа сигнала;

на Фиг. 10 показана блок-схема дополнительного варианта осуществления декодера для декодирования кодированного с предсказанием сигнала с блоком определения момента времени сброса с использованием текущего резерва битовой скорости; и

на Фиг. 11 показана блок-схема варианта осуществления кодирующей/декодирующей системы на основе адаптивного предсказания с использованием синхронных сбросов.

ПОДРОБНОЕ ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ

На Фиг. 1 показана блок-схема варианта осуществления кодера 100 для кодирования с предсказанием сигнала 105. Сигнал 105 может, например, быть информационным сигналом, таким как аудиосигнал или видеосигнал, который состоит из последовательности значений сигнала, s(n), где n=1, 2, 3, ..., таких как значения аудиосигнала или видеосигнала. Как показано на Фиг. 1, кодер 100 содержит блок 110 предсказания. Блок 110 предсказания сконфигурирован для выполнения адаптивного предсказания в зависимости от сигнала 105, s(n), и в зависимости от одного или более весовых значений 111, ωi, для получения значений 115 предсказанного сигнала, s'(n). В частности, блок 110 предсказания выполнен с возможностью сбрасывания весовых значений 111 в моменты времени, которые зависят от сигнала 105. Более того, блок 110 предсказания выполнен с возможностью адаптирования весовых значений 111 к сигналу 105 между последующими сбросами.

В вариантах осуществления, блок 110 предсказания выполнен с возможностью выполнения предсказания посредством определения значения предсказанного сигнала s'(n) исходя из одного или более предыдущих значений сигнала s(n-m), m=1, 2, 3, ..., n-1, для текущего значения сигнала s(n). Здесь, значение предсказанного сигнала s'(n) получается посредством взвешенной суммы одного или более предыдущих значений s(n-m) сигнала.

В вариантах осуществления, весовые значения предпочтительно адаптированы так, что ошибка предсказания будет удерживаться сравнительно небольшой. Например, весовые значения могут быть адаптированы так, что блок предсказания будет учитывать периодичность или периодичные участки сигнала, соответственно. Для изменений сигнала, например, когда сигнал является нестационарным, ошибка предсказания сначала увеличивается, что приводит к последствию, что весовые значения будут адаптированы так, что предсказание, выполняемое блоком предсказания, будет снова адаптировано к измененному сигналу. Ошибка предсказания может затем снова уменьшиться в том случае, если сигнал теперь достигает, по меньшей мере временно, стационарного состояния.

Согласно дополнительным вариантам осуществления, блок 110 предсказания кодера 100 может быть выполнен с возможностью выполнения сбросов весовых значений 111 в моменты времени, которые адаптированы к сигналу 105. В частности, кодер 110 может быть выполнен с возможностью выборочно выбирать моменты времени сброса для сбрасывания весовых значений 111 так, что восприятие искажений, вызванных сбросами в выбранные моменты времени сброса, будет меньше, чем восприятие искажений, которые были бы вызваны сбрасыванием весовых значений 111 в разные моменты времени.

На Фиг. 2 показана блок-схема дополнительного варианта осуществления кодера 200 для кодирования с предсказанием сигнала 105 со сбрасыванием весовых значений ωi в зависимости от текущего резерва битовой скорости, R0. Кодер 200 по Фиг. 2 по существу содержит блок 210 предсказания, который может соответствовать блоку 110 предсказания кодера 100, показанного на Фиг. 1. В варианте осуществления по Фиг. 2, блок 210 предсказания, выполненный с возможностью оперирования с сигналом 105 и предоставления предсказанного сигнала 115 на свой выход. Здесь, блок 210 предсказания может управляться сигналом управления так, чтобы выполнять сбрасывание весовых значений ωi управляемым образом. Вследствие этого, на Фиг. 2, блок 210 обработки указан надписью "блок предсказания с управляемым сбросом ωi". В варианте осуществления по Фиг. 2 блок 220 вычитания помещен после блока 210 предсказания, где блок 220 вычитания выполнен с возможностью вычитания предсказанных значений 115, s'(n), из значений 105 сигнала, s(n), так что значения остаточного сигнала, δ(n), получаются на выходе 225 блока 220 вычитания. Блок 210 предсказания и блок 220 вычитания могут вследствие этого составлять генератор 222 остаточного сигнала, который выполнен с возможностью определения значений 225 остаточного сигнала из входного сигнала 105. Как изображено на Фиг. 2, кодер 200 может также содержать δ(n)-кодер 230 для кодирования значений 225 остаточного сигнала, δ(n), для получения кодированных значений 235 остаточного сигнала, δ'(n). Здесь, δ(n)-кодер 230 может, например, быть выполненным с возможностью использования переменной битовой скорости, означая, что δ(n)-кодером 230 может быть использовано переменное число бит на сэмпл остаточного сигнала для процесса кодирования. Например, увеличенная битовая скорость может быть назначена участку сигнала, который должен быть кодирован, по существу соответствующему относительно высокой ошибке предсказания, тогда как уменьшенная битовая скорость может быть назначена другому участку сигнала, который должен быть кодирован, по существу соответствующему относительно низкой ошибке предсказания. Это будет описано более подробно ниже.

Может также быть видно на Фиг. 2, что δ(n)-кодер 230 может быть выполнен с возможностью предоставления указания 233, указывающего текущий резерв битовой скорости (или, эквивалентно, битовый резерв) (R0), который по существу относится к кодированию значений 225 остаточного сигнала, выполняемому δ(n)-кодером 230. Указание 233, указывающее текущий резерв битовой скорости (или битовый резерв), R0, принимается контроллером 240 блока предсказания, который может быть выполнен с возможностью предоставления сигнала 241 управления для блока 210 предсказания, имеющего управляемый сброс ωi и, опционально, информацию 245 сброса. В частности, контроллер блока предсказания 240 может быть настроен так, что сигнал 241 управления (т.е. сигнал управления сбросом ωi) будет основан на сравнении текущего резерва битовой скорости, R0, указанного посредством указания 233, и предварительно определенного уровня 239 резерва битовой скорости (Rp). Сравнение, выполненное контроллером 240 блока предсказания, может, например, быть таким, что блок 210 предсказания будет управляться сигналом 241 управления сбросом ωi так, чтобы выполнить сбрасывание весовых значений для адаптивного предсказания, когда текущий резерв битовой скорости, R0, превышает предварительно определенный уровень резерва битовой скорости или равняется ему (R0≥Rp). В этом случае, по существу может гарантироваться, что достаточно высокий резерв битовой скорости будет доступен для предоставления битового потока, который должен быть извлечен из входного сигнала 105. В частности, может быть гарантировано, что остаточный сигнал, который обычно принимает сравнительно большие значения вскоре после сброса, может быть кодирован с хорошей точностью ввиду доступности достаточно большого резерва битовой скорости.

Ссылаясь на вариант осуществления по Фиг. 2, кодер 200 может также содержать блок 250 задания формата битового потока. В частности, блок 250 задания формата битового потока может быть выполнен с возможностью задания формата кодированных значений 235 остаточного сигнала и информации 245 сброса для получения битового потока 255. Здесь, битовый поток 255 по существу представляет сигнал 105, s(n), и может быть использован для хранения или передачи такового.

Вследствие этого, в варианте осуществления по Фиг. 2, кодер 200 по существу сконфигурирован для получения битового потока 255, представляющего сигнал 105, причем блок 210 предсказания выполнен с возможностью выполнения сбросов в зависимости от текущего резерва 233 битовой скорости, R0, доступного для предоставления битового потока 255. Более того, генератор 222 остаточного сигнала кодера 200, как показано на Фиг. 2, выполнен с возможностью генерирования остаточного сигнала δ(n) на основе разностей между значениями 105 сигнала и значениями 115 предсказанного сигнала, так что битовый поток 255 содержит кодированные значения 235 остаточного сигнала, кодированные с переменной битовой скоростью (или числом бит на значение остаточного сигнала). По существу, блок 210 предсказания кодера 200 выполнен с возможностью выполнения сбросов весовых значений в переменные моменты времени, так что сбросы будут выполнены в моменты времени, в которые существует резерв 233 битовой скорости, который больше, чем предварительно определенный уровень 239 резерва битовой скорости, или равен ему.

На Фиг. 3a показана блок-схема дополнительного варианта осуществления кодера 300 для кодирования с предсказанием сигнала 105 со сбрасыванием весовых значений (ωi) на основе анализа сигнала. Как показано на Фиг. 3a, кодер 300 может содержать генератор 310 остаточного сигнала, δ(n)-кодер 330 и блок 350 задания формата битового потока. Здесь, блоки 310, 330, 350 обработки кодера 300, показанного на Фиг. 3a, по существу соответствуют блокам 222, 230, 250 обработки кодера 200, показанного на Фиг. 2. В частности, генератор 310 остаточного сигнала, имеющий управляемый сброс ωi, может быть выполнен с возможностью получения значений 325 остаточного сигнала δ(n) из значений 105 сигнала, s(n), так что предоставляется остаточный сигнал, который определяется значениями 325 остаточного сигнала, δ(n), и который зависит от сигнала 105, s(n). Более того, δ(n)-кодер 330 может быть выполнен с возможностью кодирования значений 325 остаточного сигнала, δ(n), для получения кодированных значений 335 остаточного сигнала, δ'(n), как, например, посредством использования переменной битовой скорости, что было описано ранее.

В варианте осуществления по Фиг. 3a, кодер 300 может также содержать анализатор 320 сигнала, который может быть реализован для анализа сигнала 105, чтобы получить сигнал 305 результата анализа. Здесь, анализ сигнала, выполненный анализатором 320 сигнала, может, например, быть использован для определения характеристик сигнала для сигнала 105, которые описываются сигналом 305 результата анализа, который может впоследствии быть использован как основание для управления операцией сброса ωi, выполняемой внутри генератора 310 остаточного сигнала. Конкретно, анализатор 320 сигнала кодера 300 может быть выполнен с возможностью извлечения характеристик сигнала для сигнала 105, на основе определения параметра тональности, поведения в неустановившимся состоянии и/или поведения при дискретности, из значений сигнала, s(n), для получения сигнала результата анализа.

В вариантах осуществления, анализатор 320 сигнала может быть выполнен с возможностью получения характеристик сигнала, которые описываются сигналом 305 результата анализа, посредством определения того, включает ли в себя область анализа (например, заданный интервал времени) неустановившееся событие или является нестационарным, т.е. характеризуется ли область анализа относительно резким изменением энергии сигнала 105 во времени, таким как увеличение или уменьшение энергии на более чем, например, 50% от одного временного участка до следующего временного участка области анализа. Здесь, обнаружение неустановившегося состояния может, например, быть основано на измерении мощности, заключенной в высокочастотном диапазоне сигнала 105, и последующего сравнения временного изменения мощности с предварительно определенным порогом.

В дополнительных вариантах осуществления, анализатор 320 сигнала может быть выполнен с возможностью определения характеристик сигнала посредством вычисления параметра тональности из сигнала 105, где параметр тональности по существу указывает то, как спектральная энергия распределена в одном или более частотных диапазонах. В случае, когда спектральная энергия распределена в диапазоне относительно равномерно, довольно нетональный сигнал существует в этом диапазоне, тогда как в случае, когда спектральная энергия относительно сильно сконцентрирована в конкретном расположении в этом диапазоне, довольно тональный сигнал существует для этого диапазона.

Согласно дополнительным вариантам осуществления, анализатор 320 сигнала может быть выполнен с возможностью определения характеристик сигнала посредством проверки того, есть ли ступенька или дискретность в форме сигнала, или огибающая сигнала в виде резкого или скачкообразного изменения между последующими значениями сигнала или соседними временными участками.

Как показано на Фиг. 3a, контроллер блока 340 предсказания помещен после анализатора 320 сигнала, который может быть в особенности настроен для предоставления сигнала 341 управления сбросом ωi для генератора 310 остаточного сигнала на основе характеристик сигнала для сигнала 105, которые описываются сигналом результата анализа. Контроллер блока 340 предсказания может, например, быть настроен для управления генератором 310 остаточного сигнала или своим внутренним блоком предсказания посредством сигнала 341 управления сбросом ωi, так что сбросы весовых значений ωi будут выборочно выполняться в моменты времени, для которых сигналы имеют конкретные характеристики (например, в моменты времени сброса, в которые, или в окрестности которых, сигнал является, например, нетональным, нестационарным или содержит ступеньку). Кроме предоставления сигнала 341 управления сбросом ωi, контроллер 340 блока предсказания может также предоставлять информацию 345 сброса в зависимости от характеристик сигнала для сигнала 105. Блок 350 задания формата битового потока выполнен с возможностью задания формата кодированных значений 335 остаточного сигнала и информации 345 сброса, предоставленной контроллером 340 блока предсказания, для получения битового потока 355, предоставляющего сигнал s(n).

Вследствие этого, со ссылкой на Фиг. 3a, кодер может быть выполнен с возможностью выполнения анализа сигнала для сигнала s(n) и выборочного выполнения сбросов в зависимости от анализа сигнала для сигнала. Более того, кодер может быть сконфигурирован для получения битового потока, представляющего сигнал, и для предоставления информации сброса, кодированной внутри битового потока, в зависимости от анализа сигнала.

Для варианта осуществления по Фиг. 3a характерно, что посредством выборочного выполнения сбросов в выбранные моменты времени сброса в зависимости от определения характеристик сигнала, как было описано выше, отрицательные воздействия на воспринимаемое качество, которые могут возникнуть из-за выполнения сбросов на протяжении участков сигнала, не являющегося, например, нетональным, нестационарным или не содержащим ступеньку (дискретность), могут по существу быть предотвращены или уменьшены.

На Фиг. 3b показана блок-схема дополнительного варианта осуществления кодера 360 для кодирования с предсказанием сигнала 105 со сбрасыванием весовых значений (ωi) на основе анализа остаточного сигнала. Здесь, кодер 360 по Фиг. 3b по существу содержит те же блоки обработки, как и кодер 300 по Фиг. 3a. Вследствие этого, идентичные блоки, имеющие аналогичные реализации и/или функции, обозначены теми же номерами, и повторное описание соответствующих блоков обработки пропущено. Однако для кодера 360 по Фиг. 3b характерно, что анализатор 380 сигнала может быть реализован для анализирования остаточного сигнала 325, δ(n), для получения сигнала 385 результата анализа. Здесь, анализ сигнала, выполненный анализатором 380 сигнала, может, например, быть использован для определения характеристик сигнала остаточного сигнала 325, которые описываются сигналом 385 результата анализа, который может впоследствии быть использован как основание для управления операцией сброса ωi, выполняемой внутри генератора 310 остаточного сигнала. Конкретно, анализатор 380 сигнала кодера 360 может быть выполнен с возможностью извлечения характеристик сигнала остаточного сигнала 325, на основе определения некоторых параметров анализа, из значений остаточного сигнала, δ(n), для получения сигнала результата анализа.

В противоположность контроллеру 340 блока предсказания кодера 300 на Фиг. 3a, контроллер 390 блока предсказания кодера 360 на Фиг. 3b не имеет выхода для предоставления информации сброса. Таким образом, блок 350 задания формата битового потока выполнен с возможностью задания формата только кодированных значений 355 остаточного сигнала для получения битового потока 355, представляющего сигнал s(n). Здесь также следует отметить, что в варианте осуществления по Фиг. 3b, вероятно некоторые другие параметры могут или должны быть использованы, которые отличаются от параметров в варианте осуществления по Фиг. 3a.

Вследствие этого, со ссылкой на Фиг. 3b, кодер может быть выполнен с возможностью выполнения анализа остаточного сигнала для остаточного сигнала δ(n) и выборочного выполнения сбросов в зависимости от анализа остаточного сигнала для остаточного сигнала. Более того, кодер может быть сконфигурирован для получения битового потока, представляющего сигнал и содержащего последовательность кодированных значений остаточного сигнала, δ'(n). Здесь кодер выполнен с возможностью избегания включения флага сброса, указывающего сброс весовых значений, в битовый поток.

В вариантах осуществления, кодер может быть выполнен с возможностью определения показателя выигрыша при кодировании из остаточного сигнала δ(n) и выборочного выполнения сбросов в зависимости от показателя выигрыша при кодировании. Предпочтительно, сбросы весовых значений должны быть выборочно выполнены в моменты времени, для которых выигрыш при кодировании относительно небольшой, как, например, при падении ниже конкретного порога, или остаточный сигнал относительно большой, как, например, при превышении конкретного порога, соответственно.

Ссылаясь на варианты осуществления, описанные со ссылкой на Фиг. 1, 2, 3a и 3b, блок предсказания может вследствие этого быть выполнен с возможностью выполнения сбросов в нерегулярные моменты времени, которые зависят от сигнала.

На Фиг. 4 показана блок-схема дополнительного варианта осуществления кодера 400 для кодирования с предсказанием сигнала 105 с фильтрующей структурой 405 и блоком 410 предоставления для предоставления весовых значений. Как показано на Фиг. 4, кодер 400 содержит генератор 402 остаточного сигнала, который включает в себя фильтрующую структуру 405 и блок 410 предоставления ωi. Здесь, генератор 402 остаточного сигнала и фильтрующая структура 405 кодера 400, как показано на Фиг. 4, может соответствовать генератору 222 остаточного сигнала и блоку 110 предсказания кодера 200, как показано на Фиг. 2, соответственно. В частности, фильтрующая структура 405 может состоять из множества 420 из m последовательно соединенных элементов линии задержки "z-1", которые могут быть выполнены с возможностью успешной задержки сигнала 105, s(n), так что множество значений успешно задержанного сигнала s(n-1), s(n-2), ..., s(n-m) будет получено на соответствующих выходах множества 420 элементов линии задержки. Впоследствии множество значений успешно задержанного сигнала s(n-1), s(n-2), ..., s(n-m) будет подано на множество 422 соответствующих блоков умножения. Каждый блок умножения из множества 422 блоков умножения может быть выполнен с возможностью применения соответствующего весового значения из множества ωi, i=1, 2, 3, ..., m, весовых значений в качестве коэффициента фильтра или веса предсказания к соответствующему значению сигнала s(n-i), i=1, 2, 3, ..., m, так что множество 423 взвешенных значений сигнала будет получено на выходах множества 422 блоков умножения. Затем, как может быть видно на Фиг. 4, множество 424 блоков суммирования могут быть выполнены с возможностью суммирования взвешенных значений сигнала из множества 423 взвешенных значений сигнала для получения значения предсказанного сигнала, s'(n), на выходе 425 фильтрующей структуры 405. Здесь, значение предсказанного сигнала, s'(n), полученное с помощью фильтрующей структуры 405, может быть представлено формулой

Как описано соответственно в варианте осуществления по Фиг. 2, генератор 402 остаточного сигнала кодера 400 может также содержать блок 430 вычитания, который может соответствовать блоку 220 вычитания кодера 200, показанного на Фиг. 2. Здесь, блок 430 вычитания может быть выполнен с возможностью вычитания значений предсказанного сигнала, s'(n), на выходе 425 фильтрующей структуры 405 из сигнала 105 для получения значений 435 остаточного сигнала, δ(n), на выходе генератора 402 остаточного сигнала. Значения 435 остаточного сигнала могут быть дополнительно обработаны, как в предыдущих вариантах осуществления. Может также быть видно на Фиг. 4, что блок 410 предоставления ωi по существу выполнен с возможностью предоставления весовых значений 415, ω1, ω2, ω3, ..., ωm, для соответствующих блоков умножения из множества 422 блоков умножения. В частности, блок 410 предоставления ωi может предоставлять весовые значения 415 на основе ошибки предсказания, принятой из выхода 435 генератора 402 остаточного сигнала, и он может также принимать сигнал 105, s(n).

В вариантах осуществления, адаптивное предсказание может быть выполнено следующим образом. Сначала множество корректирующих значений δωi, i=1, 2, 3, ..., m, может быть вычислено для каждого фильтра или этапа итерации с использованием соответствующих значений сигнала, s(n), и ошибки предсказания, δ(n).

Затем полученные таким образом корректирующие значения δω1, ..., δωm могут быть прибавлены до следующего этапа фильтрации к текущим коэффициентам ω1, ..., ωm для получения обновленных весовых значений 415, так что следующий этап итерации для значения сигнала, s(n+1), будет выполнен с новыми обновленными коэффициентами ωi→ωi+δωi. Вследствие этого, кодер 400 может по существу быть использован для выполнения адаптации весовых значений на основе ошибки предсказания.

Ссылаясь на вариант осуществления по Фиг. 4, блок 410 предоставления ωi кодера 400 может управляться сигналом 401 управления сбросом ωi, который может соответствовать сигналу 241, 341 управления вариантов осуществления по Фиг. 2, 3a или 3b, соответственно, так что весовые значения 415 будут сброшены в моменты времени, как указано сигналом 401 управления сбросом ωi. В вариантах осуществления, сбросы могут быть выполнены посредством установления весовых значений 415 в предопределенные значения, которые могут, например, быть одинаковыми для последующих моментов времени сброса, где весовые значения могут представлять начальный набор коэффициентов предсказания.

На Фиг. 5 показана схематичная иллюстрация 500 концепции для определения момента времени 555 сброса для сбрасывания весовых значений в зависимости от текущего резерва битовой скорости (R0) согласно варианту осуществления настоящего изобретения. На схематичной иллюстрации 500 по Фиг. 5 показан примерный остаточный сигнал 510 δ(n), который может соответствовать остаточным сигналам 225; 325; 435 по Фиг. 2; 3a; 3b; 4, соответственно. Здесь, соответствующая (левая) вертикальная ось 501 представляет уровень остаточного сигнала, тогда как горизонтальная ось 502 является осью время/сэмпл. Может быть видно на Фиг. 5, что вертикальная ось 501 может, например, представлять уровень сигнала с использованием нелинейной шкалы. Как изображено на Фиг. 5, примерный остаточный сигнал 510 может иметь обычную форму сигнала, причем первый участок 512 остаточного сигнала 510 может быть близким к нулю или колебаться около него, тогда как второй последовательный участок 514 остаточного сигнала 510 может иметь сильно меняющуюся форму сигнала, характеризующуюся относительно большим диапазоном между максимальным и минимальным значениями сигнала остаточного сигнала 510.

Согласно вариантам осуществления, остаточный сигнал 510 может быть кодирован, как описано в предыдущих вариантах осуществления (см. например, Фиг. 2, 3a и 3b). Здесь для кодирования может быть использован динамический диапазон 511, соответствующий максимально доступной битовой скорости, такой как, например, 8 бит на сэмпл.

Ссылаясь на Фиг. 5, первый участок 512 сигнала может, например, быть кодирован с начальной (средней) битовой скоростью в 2 бит/сэмпл, как примерно указано стреловидной линией 513, тогда как второй участок 514 сигнала может, например, быть кодирован с измененной или увеличенной битовой скоростью более чем 2 бит/сэмпл, как примерно указано стреловидной линией 515. Здесь, кодирование может быть выполнено так, что текущая битовая скорость (т.е. битовая скорость на сэмпл) будет достаточно высокой для каждого сэмпла остаточного сигнала 510, не требуя масштабирования или уменьшения уровня сигнала остаточного сигнала 510.

В зависимости от уровня остаточного сигнала 510 и действительной битовой скорости, используемой для его кодирования, будет присутствовать или будет доступен текущий резерв 533 битовой скорости, R0, где изменение текущего резерва 533 битовой скорости, R0, может быть основано на разности между средней доступной битовой скоростью (например, 4 бит/сэмпл) и действительной битовой скоростью (например, 2 бит/сэмпл). На Фиг. 5 примерно показан сигнал 533 текущего резерва битовой скорости, который может соответствовать текущему резерву 233 битовой скорости, R0, варианта осуществления по Фиг. 2. На Фиг. 5 показано, что сигнал 533 текущего резерва битовой скорости может увеличиваться для первого участка 512 сигнала, тогда как он может уменьшаться для второго участка сигнала 514, как указано стрелкой 535. Это поведение сигнала 533 текущего резерва битовой скорости может по существу быть из-за того факта, что меньшая или большая битовая скорость может быть использована для кодирования первого или второго участка 512, 514 сигнала, соответственно. Уровень сигнала 533 текущего резерва битовой скорости может быть представлен (правой) вертикальной осью 512, имеющей, например, линейную шкалу. Согласно схематичной иллюстрации по Фиг. 5, момент времени 555 сброса для сбрасывания весовых значений предсказания может быть определен за счет проверки того, выполняется ли условие R0≥Rp, где момент времени 555 сброса по существу соответствует времени, в которое уровень текущего резерва битовой скорости, R0, больше, чем предварительно определенный порог Rp или равен ему. Этот показатель по существу гарантирует, что достаточно большой резерв битовой скорости будет доступен во все моменты времени для предоставления битового потока даже в случае, когда ошибка предсказания является высокой. В частности, гарантируется, что достаточный резерв битовой скорости доступен вскоре после сброса, чтобы быть в состоянии кодировать остаточный сигнал, который обычно принимает большие значения вскоре после сброса, с хорошей точностью.

На Фиг. 6 показана схематичная иллюстрация 600 концепции для выборочного определения моментов времени сброса t0, t1, t2 для сбрасывания весовых значений на основе анализа сигнала согласно дополнительному варианту осуществления настоящего изобретения. Согласно схематичной иллюстрации по Фиг. 6, анализ сигнала может быть выполнен для получения множества моментов времени сброса t0, t1, t2 из сигнала, которым может быть сигнал 105, s(n), или остаточный сигнал 325, δ(n), в предыдущих вариантах осуществления, в которых моменты времени сброса t0, t1, t2, используемые для сбрасывания весовых значений предсказания, по существу соответствуют конкретным моментам времени, полученным из анализа сигнала. Здесь следует отметить, что эти конкретные моменты времени или моменты времени сброса t0, t1, t2 могут быть нерегулярными, т.е. первый временной период Δt1, определяемый моментами времени t0 и t1, и второй временной период Δt2, определяемый моментами времени t1 и t2, могут быть разными (Δt1≠Δt2). Вследствие этого, сбросы могут не выполняться в предварительно определенные фиксированные интервалы времени, но могут предпочтительно выполняться в нерегулярные моменты времени, зависимые от сигнала или адаптированные к нему.

Как описано ранее, анализ сигнала может по существу быть использован для идентификации характерных событий или условий внутри сигнала, таких как нетональные или нестационарные события или условия или ступеньки/дискретность или подобные. Для иллюстрации, на первом графике 610 по Фиг. 6, показан примерный сигнал или остаточный сигнал 615, который характеризуется множеством 619 неустановившихся событий, возникающих в конкретные моменты времени t0, t1, t2, тогда как на втором графике 620 показан примерный сигнал или остаточный сигнал 625, который характеризуется множеством 629 ступенек, возникающих в эти конкретные моменты времени. Здесь, вертикальные оси 601, 603 и горизонтальные оси 602, 604 первом и втором графике 610, 620 соответствуют уровню сигнала (или сигналу) или "время/сэмпл", соответственно.

На Фиг. 7a проиллюстрировано отрицательное воздействие выполнения сброса в пределах примерного хорошо предсказуемого сигнала 705. На первом графике 710 по Фиг. 7a хорошо предсказуемый сигнал 705, который указан непрерывной линией, может характеризоваться тем, что он может быть хорошо предсказан посредством использования адаптивного предсказания, такого как описано ранее. Здесь, хорошо предсказуемый сигнал 705 может, например, быть приблизительно периодическим сигналом. На первом графике 710 по Фиг. 7a конкретно показано, что форма сигнала предсказанного сигнала 707, s'(n), как указано пунктирной линией, может приблизительно соответствовать форме первоначального сигнала 705, s(n), в пределах первого участка 712 времени, тогда как он может сильно отклоняться от первоначального сигнала в пределах второго участка 714 времени. Здесь, первый участок 712 времени может быть определен начальным моментом времени t0 и моментом времени сброса, treset, тогда как второй участок 714 времени может быть определен моментом времени сброса, treset, как начальная точка. Довольно сильное отклонение между первоначальным сигналом 705, s(n), и предсказанным сигналом 707, s'(n), на протяжении второго участка 714 времени может возникать из-за выполнения сброса весовых значений в момент времени сброса, treset, расположенный в пределах участка хорошо предсказуемого сигнала. Это потому, что для первого участка 712 времени весовые значения (ωopt) могут быть в оптимизированном состоянии, тогда как для второго участка 714 времени весовые значения (ωnon-opt) могут быть в неоптимизированном состоянии, т.е. они лишены регулирования(?) в результате операции сброса. Отрицательное воздействие этой операции сброса проиллюстрировано на втором графике 720 по Фиг. 7a. На втором графике 720 по Фиг. 7a показан остаточный сигнал или его магнитуда 725, |δ(n)|, которая по существу соответствует разности между первоначальным сигналом 705, s(n), и предсказанным сигналом 707, s'(n), показанным на первом графике 710 по Фиг. 7a. Может быть ясно видно, что магнитуда 725 остаточного сигнала почти спадает между t0 и treset, тогда как она характеризуется относительно большими значениями начиная с момента времени сброса, treset. Вследствие этого, из-за скачкообразного изменения магнитуды 725 остаточного сигнала около момента времени сброса, treset, могут быть внесены воспринимаемые артефакты/искажения, тем самым приводя к значительному уменьшению качества сигнала. Например, может быть необходимо кодировать сравнительно большой остаточный сигнал с использованием низкой точности из-за ограничений битовой скорости.

На Фиг. 7b проиллюстрировано это отрицательное воздействие посредством примера дополнительного хорошо предсказуемого сигнала 755. Как показано на первом графике 750 по Фиг. 7b, хорошо предсказуемый сигнал 755 может быть периодическим и постоянно затухающим сигналом, который может быть хорошо предсказан посредством предсказательного сигнала 757 в пределах первого участка 752 времени, в котором доступны оптимизированные весовые значения (ωopt), тогда как он может сильно отклоняться от предсказанного сигнала 757 в пределах второго участка 754 времени, в котором оптимизированные весовые значения (ωnon-opt) недоступны, так как весовые значения по умолчанию используются в ответ на сброс. Примерный результирующий остаточный сигнал или его магнитуда 775 изображена на втором графике 760 по Фиг. 7b, явным образом показывая скачкообразное изменение остаточного сигнала около момента времени сброса, treset. Следовательно, в примере по Фиг. 7b будут появляться воспринимаемые артефакты/искажения, приводя к уменьшению качества сигнала как в примере с Фиг. 7a.

На Фиг. 8 показана блок-схема варианта осуществления декодера 800 для декодирования кодированного с предсказанием сигнала 805 с использованием информация 819 сброса. В варианте осуществления согласно Фиг. 8, кодированный с предсказанием сигнал 805 может содержать последовательность значений 815 остаточного сигнала, δ(n), и информацию 819 сброса, кодированные внутри битового потока. Здесь отмечено, что кодированный с предсказанием сигнал 805 в виде битового потока может соответствовать битовому потоку, полученному кодером согласно предыдущим вариантам осуществления, такому как битовые потоки 255 или 355 кодеров 200 или 300, соответственно, представляющие сигнал s(n). Ссылаясь на вариант осуществления по Фиг. 8, декодер 800 по существу содержит блок 810 синтаксического анализа битового потока и блок 820 предсказания. Блок 810 синтаксического анализа битового потока может быть сконфигурирован для получения значений 815 остаточного сигнала, δ(n), и информации 819 сброса из битового потока 805. Здесь, блок 810 синтаксического анализа битового потока может содержать δ(n)-декодер для декодирования кодированных значений остаточного сигнала, δ'(n), вслед за получением кодированных значений остаточного сигнала, δ'(n), из битового потока 805.Конкретно, блок 820 предсказания может быть выполнен с возможностью выполнения адаптивного предсказания (блок 821) для получения значений 825 предсказанного сигнала, s'(n), и суммирования значений 825 предсказанного сигнала, s'(n), и значений 815 остаточного сигнала, δ(n), посредством использования суммирующего блока 830 для получения значений 835 декодированного сигнала, s*(n). Как показано на Фиг. 8, блок 820 предсказания может быть выполнен с возможностью сбрасывания одного или более весовых значений 811, ωi, для адаптивного предсказания с использованием информации 819 сброса. Более того, блок 820 предсказания может быть выполнен с возможностью адаптирования весовых значений к декодированному сигналу 835, s*(n), между последующими сбросами. По существу, блок 820 предсказания использует предоставленную информацию 819 сброса, которая была первоначально получена кодером, таким как описано в предыдущих вариантах осуществления, и которая была включена кодером в битовый поток 805.

На Фиг. 9 показана блок-схема дополнительного варианта 900 осуществления декодера для декодирования кодированного с предсказанием сигнала 905 с блоком 950 определения момента времени сброса на основе анализа сигнала. Сигнал 905 может содержать последовательность значений 915 остаточного сигнала, δ(n), кодированных внутри битового потока, и может быть предоставлен одним из ранее описанных кодеров. Как показано на Фиг. 9, декодер 900 содержит блок синтаксического анализа битового потока, включающий в себя δ(n)-декодер 910, блок 920 предсказания и блок 950 определения момента времени сброса. Блок 910 синтаксического анализа битового потока может быть сконфигурирован для получения значений 915 остаточного сигнала, δ(n), из битового потока 805. В частности, блок 910 синтаксического анализа битового потока может извлекать кодированные значения остаточного сигнала, δ'(n), из битового потока и впоследствии декодировать кодированные значения остаточного сигнала, δ'(n), посредством использования δ(n)-декодера для получения значений остаточного сигнала, δ(n). Аналогично декодеру 800, показанному на Фиг. 8, блок 920 предсказания декодера 900, показанного на Фиг. 9, может быть выполнен с возможностью выполнения адаптивного предсказания (блок 921) для получения значений 925 предсказанного сигнала, s'(n), и суммирования значений 925 предсказанного сигнала, s'(n), и значений 915 остаточного сигнала, δ(n), для получения значений 935 декодированного сигнала, s*(n), посредством использования суммирующего блока 930. Для варианта осуществления по Фиг. 9 характерно, что блок 950 определения момента времени сброса может быть выполнен с возможностью определения моментов времени сброса в зависимости от значений 915 остаточного сигнала, δ(n). В частности, блок 950 определения момента времени сброса может быть оперирующим со значениями 915 остаточного сигнала для выполнения анализа сигнала остаточного сигнала, так что сигнал 919 управления сбросом ωi будет получен на выходе блока 950 определения момента времени сброса. Таким образом, полученный сигнал 910 управления сбросом ωi может быть использован для управления блоком 920 предсказания для выполнения адаптивного предсказания (блок 921) в ответ на сигнал 919 управления сбросом ωi. Анализ сигнала, выполненный блоком 950 определения момента времени сброса, может, например, быть основан на характеристиках сигнала проанализированного сигнала, как, например, характеризующегося как нетональный, нестационарный или содержащий ступеньку. В частности, блок 920 предсказания декодера 900 может быть выполнен с возможностью сбрасывания одного или более весовых значений 911, ωi, для адаптивного предсказания в определенные моменты времени сброса. В дополнение, блок 920 предсказания декодера 900 может быть выполнен с возможностью адаптирования весовых значений 911 к декодированному сигналу между последующими сбросами.

На Фиг. 9 показан декодер с определением моментов времени сброса на основе анализа сигнала. Здесь, анализ должен выполняться не на основании реконструированного сигнала, а на основании сигнала ошибки, последний называется как остаточный сигнал. Другими словами, анализ сигнала должен выполняться на основании только сигнала ошибки.

Однако если блок 950 определения момента времени сброса был выполнен с возможностью выполнения анализа сигнала значений 935 декодированного сигнала, это приведет к асинхронным сбросам в случае ошибок передачи, которые наиболее вероятно снова не могли быть синхронизированы.

На Фиг. 10 показана блок-схема дополнительного варианта осуществления декодера 1000 для декодирования кодированного с предсказанием сигнала 905 с блоком 1020 определения момента времени сброса с использованием текущего резерва 1011 битовой скорости, R0. Здесь, декодер 1000 по Фиг. 10 по существу содержит те же блоки обработки, как и декодер 900 по Фиг. 9. Вследствие этого, идентичные блоки, имеющие аналогичные реализации и/или функции, обозначены теми же номерами, и повторное описание соответствующих блоков обработки пропущено. Однако для декодера 1000 по Фиг. 10 характерно, что блок 1020 определения момента времени сброса может быть выполнен с возможностью определения моментов времени сброса в зависимости от текущего резерва 1011 битовой скорости, R0, битового потока, представляющего кодированный с предсказанием сигнал 905. В частности, декодер 1000 может содержать δ(n)-кодер для кодирования значений 915 остаточного сигнала, δ(n), предоставленных блоком 910 синтаксического анализа битового потока, с использованием переменной битовой скорости. В результате, будет получено указание 1011 текущего резерва битовой скорости. Здесь, обработка, выполненная δ(n)-кодером 1010 в варианте осуществления по Фиг. 10, может соответствовать (или быть обратной) обработке, выполненной δ(n)-кодером 230 кодера 200 в варианте осуществления по Фиг. 2. Блок 920 предсказания в варианте осуществления по Фиг. 10 работает, как в варианте осуществления по Фиг. 9, чтобы в итоге получить значения 935 декодированного сигнала.

На Фиг. 11 показана блок-схема варианта осуществления кодирующей/декодирующей системы 1100 на основе адаптивного предсказания с использованием синхронных сбросов. На стороне декодера кодирующей/декодирующей системы 1100 показан декодер 1120, который может соответствовать декодерам 800; 900; 1000 по Фиг. 8; 9; 10, соответственно. Вследствие этого, повторное описание декодера по Фиг. 11 здесь пропущено. В основном, декодер 1120 по Фиг. 11 может быть оперирующим с кодированной с предсказанием версией сигнала 1105, имеющего последовательность значений остаточного сигнала, δ(n), кодированных внутри битового потока, для выполнения адаптивного предсказания, так чтобы были получены значения 1125 декодированного сигнала, s*(n). Здесь, кодированная с предсказанием версия сигнала 1105 и значения 1125 декодированного сигнала могут соответствовать кодированному с предсказанием сигналу 805, 905 или значениям 835; 935 декодированного сигнала по Фиг. 8; 9; 10, соответственно. На стороне кодера кодирующей/декодирующей системы 1100 показан кодер 1110, который может соответствовать кодерам 200; 300; 360 по Фиг. 2; 3a; 3b, соответственно. Вследствие этого, повторное описание кодера 1110 по Фиг. 11 здесь пропущено. В основном, кодер 1110 по Фиг. 11 может быть выполнен с возможностью оперирования с последовательностью значений 1101 сигнала, s(n), для выполнения адаптивного предсказания, так чтобы был получен битовый поток 1115, представляющий сигнал s(n). Здесь, последовательность значений 1101 сигнала и битовый поток 1115 по Фиг. 11 могут соответствовать сигналу 105 или битовому потоку 255; 355, соответственно.

В кодирующей/декодирующей системе по Фиг. 11 битовый поток может быть передан из кодера 1110 в декодер 1120, где битовый поток может включать в себя информацию сброса, такую как информация 245; 345 сброса по Фиг. 2; 3a, соответственно, и где информация сброса может быть использована декодером 1120 для процесса адаптивного предсказания.

Ссылаясь на вариант осуществления по Фиг. 11, кодер 1110 и декодер 1120 опционально могут быть выполнены с возможностью синхронизации посредством использования сигнала 1135 управления синхронизацией, предоставляемого контроллером 1130 синхронизации. В частности, кодер 1110 и декодер 1120 кодирующей/декодирующей системы 1100 могут быть синхронизированы посредством сигнала 1135 управления синхронизацией, так чтобы весовые значения для адаптивного предсказания сбрасывались в синхронные моменты времени. Вследствие этого, блоки предсказания кодера 1110 и декодера 1120 могут быть настроены для синхронного выполнения сбросов.

Здесь отмечено, что в принципе, следует проводить различие между двумя альтернативными вариантами для определения моментов времени сброса в кодере и декодере. В первом альтернативном варианте, моменты времени сброса могут быть определены посредством анализа сигнала в кодере, и информация сброса может быть передана декодеру. Во втором альтернативном варианте, моменты времени сброса могут быть определены посредством анализа сигнала в кодере, и параллельно (идентичные) моменты времени сброса могут быть определены посредством анализа в декодере, независимо от кодера.

Согласно первому альтернативному варианту, анализ сигнала в кодере может предпочтительно быть выполнен на основании входного сигнала s(n), так как параметры для фиксирования или определения моментов времени сброса (например, параметры, описывающие тональность, поведение в неустановившимся состоянии, дискретность и т.д.) могут быть определены с большей надежностью из входного сигнала s(n).

Согласно второму альтернативному варианту, может требоваться выполнить анализ сигнала для определения моментов времени сброса в кодере, также как и в декодере, на основании сигнала ошибки, δ(n), так чтобы гарантировать восстановление синхронизации моментов времени сброса в случае возможных ошибок передачи на стороне декодера.

Здесь, следует отметить, что для определения моментов времени сброса, вероятно и по меньшей мере частично, могут или должны быть использованы некоторые другие параметры анализа, которые отличаются от параметров в первом альтернативном варианте, так как сигнал ошибки, δ(n), который теперь используется для определения моментов времени сброса, может иметь другие характеристики сигнала по сравнению с входным сигналом s(n), который используется для определения моментов времени в первом альтернативном варианте. Однако оба сигнала могут быть схожими друг с другом. В некоторых вариантах осуществления, значения тональности или параметры тональности могут быть извлечены из сигнала ошибки, δ(n).

В некоторых дополнительных вариантах осуществления, есть лучшие решения, чем извлечение параметров тональности из сигнала ошибки, δ(n). В частности, показатель выигрыша при кодировании может сначала быть определен из ошибки или остаточного сигнала δ(n). Затем сбросы весовых значений могут быть выборочно выбраны в зависимости от показателя выигрыша при кодировании. Здесь, выигрыш при кодировании является в результате анализа предсказания, такого как выполненный кодером 360 по Фиг. 3b. В случае когда выигрыш при кодировании для предсказания является относительно большим (или остаточный сигнал является относительно небольшим), сброс весовых значений будет оказывать сильное воздействие на выигрыш при кодировании, таким образом приводя к его уменьшению, тем самым приводя к явно воспринимаемым искажениям качества аудио. Это отрицательное воздействие на качество аудио было бы более выражено в случае скачкообразного сброса. Здесь, относительно большой выигрыш при кодировании или относительно небольшой остаточный сигнал означает, что коэффициенты предсказания или весовые значения очень хорошо адаптированы к сигналу. В случае когда выигрыш при кодировании для предсказания является относительно небольшим (или остаточный сигнал является относительно большим), сброс весовых значений не будет оказывать сильное воздействие на выигрыш при кодировании, таким образом приводя к его незначительному уменьшению, тем самым приводя к почти неслышимым или менее воспринимаемым искажениям качества аудио из-за сброса. Вследствие этого, для того, чтобы предотвратить только что упомянутое отрицательное воздействие на качество аудио, сбросы весовых значений должны быть выборочно выполнены в моменты времени, для которых выигрыш при кодировании относительно небольшой, как, например, при падении ниже конкретного порога, или остаточный сигнал относительно большой, как, например, при превышении конкретного порога, соответственно.

Здесь также отмечено, что в любом случае или по меньшей мере в некоторых случаях, определение моментов времени сброса должно выполняться синхронно в кодере и декодере. В случае когда определение моментов времени сброса было выполнено на основании реконструированного сигнала, в декодере, момент времени сброса будет корректно проанализирован и выполнен, только если во время передачи битового потока не были произведены ошибки. Здесь следует отметить, что только в случае передачи без ошибок остаточный сигнал и предсказанный сигнал (Фиг. 9) в декодере будут идентичными входному сигналу и остаточному сигналу в кодере. Это означает, что в случае анализа на основании реконструированного сигнала, неверные моменты времени сброса будут определяться в декодере, если возникнут ошибки во время передачи битового потока. Из-за способности к обратной адаптации определения момента времени сброса синхронизация могла бы быть также не восстановлена. Следовательно, все последующие сбросы произошли бы также в неверное время, так как ошибка передачи и вследствие этого неверная реконструкция из-за асинхронных сбросов не исчезла бы.

Таким образом, в некоторых вариантах осуществления, анализ моментов времени сброса должен выполняться только на основании остаточного сигнала, а не на основании входных сигналов (в кодере) и реконструированного сигнала (в декодере).

Согласно вариантам осуществления, сигнал, переданный из кодера 1110 декодеру 1120 в варианте осуществления по Фиг. 11, может быть кодированным с предсказанием информационным сигналом, содержащим информационный сигнал ошибки предсказания, представляющий разности между значениями действительного сигнала, s(n), и значениями предсказанного сигнала, s'(n). Здесь, значения предсказанного сигнала, s'(n), могут быть предсказаны в соответствии с одним или более весовыми значениями ωi, тогда как весовые значения могут быть адаптированы к сигналу между последующими сбросами. Кодированный с предсказанием информационный сигнал может также содержать информацию сброса, описывающую моменты времени, для которых весовые значения могут быть сброшены.

Согласно дополнительным вариантам осуществления, информация сброса кодированного с предсказанием информационного сигнала может конкретно описывать нерегулярные моменты времени.

Хотя настоящее изобретение было описано в контексте блок-схем, где блоки представляют действительные или логические аппаратные компоненты, настоящее изобретение также может быть реализовано при помощи реализуемого на компьютере способа. В последнем случае, блоки представляют соответствующие этапы способа, где эти этапы обозначают функции, выполняемые соответствующими логическими или физическими автономными блоками.

Описанные варианты осуществления являются лишь иллюстративными для принципов настоящего изобретения. Следует понимать, что модификации и вариации данных компоновок и подробности, описанные в настоящем документе, будут очевидны специалистам в данной области техники. Вследствие этого, предполагается ограничение только объемом прилагаемой формулы изобретения, а не конкретными подробностями, представленными с целью описания и разъяснения вариантов осуществления в настоящем документе.

Хотя некоторые аспекты были описаны в контексте устройства, ясно, что эти аспекты также представляют описание соответствующего способа, где блок или устройство соответствует этапу способа, или признака этапа способа. Аналогично, аспекты, описанные в контексте этапа способа, также представляют описание соответствующего блока или элемента или признака соответствующего устройства. Некоторые или все из этапов способа могут быть исполнены посредством (или используя) аппаратного устройства, как, например, микропроцессор, программируемый компьютер или электронная схема. В некоторых вариантах осуществления, некоторый один или более из наиболее важных этапов способа могут быть исполнены таким устройством.

Кодированный информационный сигнал согласно изобретению может быть сохранен в цифровой среде хранения или может быть передан в среде передачи, такой как среда беспроводной передачи или среда проводной передачи, такой как Интернет.

В зависимости от определенных требований реализации, варианты осуществления данного изобретения могут быть реализованы в аппаратном обеспечении или программном обеспечении. Данная реализация может быть выполнена, используя цифровой носитель данных, например floppy-диск, DVD, Blue-Ray, CD, ROM, PROM, EPROM, EEPROM или flash-память, имеющий электронно считываемые сигналы управления, хранящиеся на нем, которые взаимодействуют (или способны взаимодействовать) с программируемой компьютерной системой, так чтобы выполнялся соответствующий способ. Вследствие этого, цифровой носитель данных может быть считываемым компьютером.

Некоторые варианты осуществления согласно данному изобретению содержат носитель данных, имеющий электронно считываемые сигналы управления, которые способны взаимодействовать с программируемой компьютерной системой, так чтобы выполнялся один из способов, описанных в настоящем документе.

В общем, варианты осуществления настоящего изобретения могут быть реализованы как компьютерный программный продукт с программным кодом, причем программный код, являющийся действующим для выполнения одного из способов, когда компьютерный программный продукт выполняется на компьютере. Программный код может, например, храниться на считываемом машиной носителе.

Другие варианты осуществления содержат компьютерную программу для выполнения одного из способов, описанных в настоящем документе, хранящихся на считываемом машиной носителе.

Другими словами, вариант осуществления способа согласно настоящему изобретению, вследствие этого, является компьютерной программой, имеющей программный код для выполнения одного из способов, описанных в настоящем документе, когда компьютерная программа выполняется на компьютере.

Дополнительный вариант осуществления способов согласно настоящему изобретению, вследствие этого, является носителем данных (или цифровым носителем данных или компьютерно-читаемым носителем), содержащем записанную на нем компьютерную программу для выполнения одного из способов, описанных в настоящем документе. Носитель данных, цифровой носитель данных или носитель записи обычно материальны и/или постоянны.

Дополнительный вариант осуществления способа согласно настоящему изобретению, вследствие этого, является потоком данных или последовательностью сигналов, представляющих компьютерную программу для выполнения одного из способов, описанных в настоящем документе. Поток данных или последовательность сигналов могут, например, быть выполненными с возможностью быть перенесенными через соединение передачи данных, например, через Интернет.

Дополнительный вариант осуществления содержит средство обработки, например, компьютер, или программируемое логическое устройство, выполненное с возможностью или адаптированное для выполнения одного из способов, описанных в настоящем документе.

Дополнительный вариант осуществления содержит компьютер, имеющий установленную на нем компьютерную программу для выполнения одного из способов, описанных в настоящем документе.

Дополнительный вариант осуществления согласно данному изобретению содержит устройство или систему, выполненные с возможностью переноса (например, электронно или оптически) компьютерной программы для выполнения одного из способов, описанных в настоящем документе, в приемник. Приемник может, например, быть компьютером, мобильным устройством, запоминающим устройством или тому подобным. Устройство или система могут, например, содержать файл-сервер для переноса компьютерной программы на приемник.

В некоторых вариантах осуществления, программируемое логическое устройство (например, программируемая пользователем вентильная матрица) может быть использовано для выполнения некоторый или всех функциональных возможностей способов, описанных в настоящем документе. В некоторых вариантах осуществления, программируемая пользователем вентильная матрица может взаимодействовать с микропроцессором для выполнения одного из способов, описанных в настоящем документе. В общем, способы предпочтительно выполняются любым аппаратным устройством.

Вышеописанные варианты осуществления являются лишь иллюстративными для принципов настоящего изобретения. Следует понимать, что модификации и вариации данных компоновок и подробности, описанные в настоящем документе, будут очевидны специалистам в данной области техники. Это является замыслом, вследствие этого, который следует ограничить только объемом предстоящих пунктов формулы изобретения, и не конкретными подробностями, представленными с целью описания и разъяснения вариантов осуществления в настоящем документе.

Варианты осуществления настоящего изобретения предоставляют концепцию для кодирования с предсказанием сигнала посредством предсказания текущего значения сигнала с использованием взвешивания значений прошлого сигнала, в которой весовые значения могут непрерывно адаптироваться к сигналу и в которой весовые значения могут быть синхронизированы (например, посредством выполнения сброса к значению по умолчанию) внутри передатчика и приемника в моменты времени, которые адаптированы к сигналу.

Варианты осуществления настоящего изобретения также предоставляют концепцию для кодирования с предсказанием сигнала, в которой моменты времени, в которые может происходить только что упомянутая синхронизация, могут быть выбраны в зависимости от сигнала, как, например, в моменты времени, для которых внутри сигнала обнаружен резерв битовой скорости или для которых обнаружена ступенька, нетональные или нестационарные события или временной участок.

Вкратце, варианты осуществления согласно настоящему изобретению применяет схему кодирования с предсказанием с переменными моментами времени сброса, в которой весовые значения для адаптивного предсказания могут непрерывно адаптироваться к сигналу, так чтобы разность между предсказанным сигналом и действительным сигналом была минимизирована. Здесь, адаптация весовых значений внутри передатчика может быть выполнена на основании ошибки предсказания. Таким образом, весовые значения могут быть адаптированы к сигналу.

Другими словами, варианты осуществления согласно настоящему изобретению основаны на адаптивном моменте времени сброса, который может быть использован для основанных на блоке предсказания кодеках.

Преимущество настоящего изобретения состоит в том, что посредством использования нерегулярных интервалов времени для сбросов весовых значений, увеличение ошибки предсказания, которое было бы из-за неидеальной адаптации весовых значений к сигналу, может быть эффективно предотвращено или уменьшено. Более того, настоящее изобретение является выгодным, так как ошибка предсказания может быть представлена более точно. В частности, удалось избежать того, что сброс может, например, быть выполнен в момент времени, для которого сигнал является очень тональным или стационарным (например, в случае тона органной трубы), так что воспринимаемые подобные щелчкам артефакты, которые были бы вызваны таким сбросом, могут быть эффективно подавлены.

В противоположность структурам существующего уровня техники, в которых сброс по существу выполняется в предварительно определенные или фиксированные интервалы времени, что может приводить к уменьшению надежности предсказания, варианты осуществления настоящего изобретения могут избегать этого недостатка.

Для повторения, чтобы уменьшить или предотвратить восприятие сбросов, сбросы должны выполняться в моменты времени, которые адаптированы к сигналу. Сбросы тогда меньше или более не воспринимаемы. Эти моменты времени расположены в областях, где кодер обнаруживает резерв битовой скорости или где сигнал является, например, нетональным или нестационарным. Настоящее изобретение основано на непериодических моментах времени для сбросов и использования других параметров для определения моментов времени, в которые сбросы становятся невоспринимаемыми. Настоящее изобретение является полезным, так как подобные щелчкам шумы, которые возникают из-за сбросов, могут быть предотвращены. В частности, можно избежать того, что эффективность предсказания будет уменьшена или ухудшена из-за сброса, что будет случаем, когда весовые значения блоков предсказания не были идеально адаптированы к сигналу. Настоящее изобретение не делает сброс ненужным, а обеспечивает возможность выполнять сбросы в моменты времени, в которые полученные в результате искажения/помехи являются невоспринимаемыми или по меньшей мере менее воспринимаемыми.

1. Кодер (100) для кодирования с предсказанием сигнала (105), имеющего последовательность значений сигнала (s(n)), причем кодер (100) содержит:
блок (110) предсказания для выполнения адаптивного предсказания в зависимости от сигнала (105) (s(n)), и в зависимости от одного или более весовых значений (111) (ωi), для получения значений (115) предсказанного сигнала (s′(n)),
причем блок (110) предсказания выполнен с возможностью сбрасывания весовых значений (111) в моменты времени, которые зависят от сигнала (105), и
причем блок (110) предсказания выполнен с возможностью адаптирования весовых значений (111) к сигналу (105) между последующими сбросами;
при этом кодер (200) выполнен с возможностью получения битового потока (255), представляющего сигнал (105), и причем блок (210) предсказания выполнен с возможностью выполнения сбросов в зависимости от текущего резерва (233) битовой скорости (R0), доступного для предоставления битового потока (255).

2. Кодер (100) по п. 1, в котором блок (110) предсказания выполнен с возможностью сбросов весовых значений (111) в моменты времени, которые адаптированы к сигналу (105), и в котором блок (110) предсказания выполнен с возможностью выборочно выбирать моменты времени сброса для сбрасывания весовых значений (111) так, что восприятие искажений, вызванных сбросами в выбранные моменты времени сброса, меньше, чем восприятие искажений, которые были бы вызваны сбрасыванием весовых значений (111) в разные моменты времени.

3. Кодер (200) по п. 1, причем кодер (200) выполнен с возможностью генерирования остаточного сигнала на основе разностей между значениями (105) сигнала (s(n)) и значениями (115) предсказанного сигнала (s′(n)), так что битовый поток содержит кодированные значения (255) остаточного сигнала (δ′(n)), кодированные с переменной битовой скоростью, и в котором блок (210) предсказания выполнен с возможностью выполнения сбросов весовых значений (111) в переменные моменты времени, так что сбросы выполняются в моменты времени, в которые есть резерв (233) битовой скорости (R0), который больше, чем предварительно определенный уровень (239) резерва битовой скорости (Rp) или равен ему.

4. Кодер (300) по п. 1, причем кодер (300) выполнен с возможностью выполнения анализа сигнала для сигнала (105) (s(n)) и выборочного выполнения сбросов в зависимости от анализа сигнала для сигнала, и при этом кодер (300) сконфигурирован для получения битового потока (355), представляющего сигнал (105), и для предоставления информации (345) сброса, кодированной внутри битового потока, в зависимости от анализа сигнала.

5. Кодер (300) по п. 1, причем кодер (300) выполнен с возможностью определения параметра тональности из значений сигнала (s(n)) и выборочного выполнения сбросов в моменты времени, для которых сигнал является нетональным, в зависимости от определения тональности.

6. Кодер (300) по одному из п. 1, причем кодер (300) выполнен с возможностью определения поведения в неустановившимся состоянии из значений сигнала (s(n)) и выполнения сбросов в моменты времени, для которых сигнал является нестационарным.

7. Кодер (300) по п. 1, причем кодер (300) выполнен с возможностью определения поведения при дискретности из значений сигнала (s(n)) и выполнения сбросов в моменты времени, для которых сигнал содержит ступеньку.

8. Кодер (360) по одному из п. 1, причем кодер (360) выполнен с возможностью выполнения анализа остаточного сигнала для остаточного сигнала (105) δ(n), причем остаточный сигнал основан на разностях между значениями (105) сигнала (s(n)) и значениями (115) предсказанного сигнала (s′(n)), и выборочного выполнения сбросов в зависимости от анализа остаточного сигнала для остаточного сигнала, и при этом кодер (360) сконфигурирован для получения битового потока (355), представляющего сигнал (105) и содержащего последовательность кодированных значений (335) остаточного сигнала (δ′(n)), причем кодер выполнен с возможностью избегания включения флага сброса, указывающего сброс весовых значений, в битовый поток.

9. Кодер (360) по п. 8, причем кодер (360) выполнен с возможностью определения показателя выигрыша при кодировании из остаточного сигнала (325) (δ(n)) и выборочного выполнения сбросов в зависимости от показателя выигрыша при кодировании.

10. Кодер (100) по п. 1, в котором блок (110) предсказания выполнен с возможностью выполнения сбросов в нерегулярные моменты времени, которые зависят от сигнала.

11. Кодер (400) по п. 1, в котором блок (110) предсказания выполнен с возможностью выполнения адаптирования весовых значений (415) на основе ошибки (435) предсказания.

12. Декодер (900) для декодирования кодированного с предсказанием сигнала (905), имеющего последовательность значений (915) остаточного сигнала (δ(n)), кодированных внутри битового потока, причем декодер (900) содержит:
блок (910) синтаксического анализа битового потока, сконфигурированный для получения значений (915) остаточного сигнала (δ(n)) из битового потока;
блок (950) определения момента времени сброса, выполненный с возможностью определения моментов времени сброса в зависимости от значений (915) остаточного сигнала; и
блок (920) предсказания, который выполнен для выполнения адаптивного предсказания (921) для получения значений (925) предсказанного сигнала (s′(n)) и суммирования (930) значений (925) предсказанного сигнала (s′(n)) и значений (915) остаточного сигнала (δ(n)) для получения значений (935) декодированного сигнала (s*(n)),
причем блок (920) предсказания выполнен с возможностью сбрасывания одного или более весовых значений (911) (ωi) для адаптивного предсказания в определенные моменты времени сброса, и
при этом блок (920) предсказания выполнен с возможностью адаптирования весовых значений (911) к сигналу, который должен быть декодирован, между последующими сбросами.

13. Декодер (1000) для декодирования кодированного с предсказанием сигнала (905), имеющего последовательность значений (915) остаточного сигнала (δ(n)), кодированных внутри битового потока, причем декодер (1000) содержит:
блок (910) синтаксического анализа битового потока, сконфигурированный для получения значений (915) остаточного сигнала (δ(n)) из битового потока;
блок (1020) определения момента времени сброса, выполненный с возможностью определения моментов времени сброса в зависимости от текущего резерва (1011) битовой скорости (R0) битового потока, представляющего кодированный с предсказанием сигнал (905); и
блок (920) предсказания, который выполнен для выполнения адаптивного предсказания (921) для получения значений (925) предсказанного сигнала (s′(n)) и суммирования (930) значений (925) предсказанного сигнала (s′(n)) и значений (915) остаточного сигнала (δ(n)) для получения значений (935) декодированного сигнала (s*(n)),
причем блок (920) предсказания выполнен с возможностью сбрасывания одного или более весовых значений (911) (ωi) для адаптивного предсказания в определенные моменты времени сброса, и
при этом блок (920) предсказания выполнен с возможностью адаптирования весовых значений (911) к сигналу, который должен быть декодирован, между последующими сбросами.

14. Система (1100) для обработки сигнала (1101), причем система (1100) содержит:
кодер (1110) по одному из пп. с 1 по 11; и
декодер (1120) по одному из пп. с 12 по 13;
причем блоки (110) предсказания кодера (1110) и декодера (1120) выполнены с возможностью синхронного выполнения сбросов.

15. Способ кодирования с предсказанием сигнала (105), имеющего последовательность значений сигнала (s(n)), причем способ (100) содержит этап, на котором:
выполняют адаптивное предсказание в зависимости от сигнала (105) (s(n)), и в зависимости от одного или более весовых значений (111) (ωi), для получения значения (115) предсказанного сигнала (s′(n)),
причем этап выполнения адаптивного предсказания содержит сбрасывание весовых значений (111) в моменты времени, которые зависят от сигнала (105), и адаптирование весовых значений (111) к сигналу (105) между последующими сбросами;
при этом способ содержит этап, на котором получают битовый поток (255), представляющий сигнал (105), и
причем сбросы выполняются в зависимости от текущего резерва (233) битовой скорости (R0), доступного для предоставления битового потока (255).

16. Способ декодирования кодированного с предсказанием сигнала (905), имеющего последовательность значений (915) остаточного сигнала (δ(n)), кодированных внутри битового потока, причем способ содержит этапы, на которых:
получают значения (915) остаточного сигнала (δ(n)) из битового потока;
определяют момент времени сброса в зависимости от значений (915) остаточного сигнала;
выполняют адаптивное предсказание (921) для получения значений (925) предсказанного сигнала (s′(n)) и суммируют (930) значения (925) предсказанного сигнала (s′(n)) и значения (915) остаточного сигнала (δ(n)) для получения значений (935) декодированного сигнала (s*(n)),
причем этапы выполнения адаптивного предсказания (921) и суммирования (930) содержат сбрасывание одного или более весовых значений (911) (ωi) для адаптивного предсказания в определенные моменты времени сброса и адаптирование весовых значений (911) к сигналу, который должен быть декодирован, между последующими сбросами.

17. Способ декодирования кодированного с предсказанием сигнала (905), имеющего последовательность значений (915) остаточного сигнала (δ(n)), кодированных внутри битового потока, причем способ содержит этапы, на которых:
получают значения (915) остаточного сигнала (δ(n)) из битового потока;
определяют моменты времени сброса в зависимости от текущего резерва (1011) битовой скорости (R0) битового потока, представляющего кодированный с предсказанием сигнал (905); и
выполняют адаптивное предсказание (921) для получения значений (925) предсказанного сигнала (s′(n)) и суммируют (930) значения (925) предсказанного сигнала (s′(n)) и значения (915) остаточного сигнала (δ(n)) для получения значений (935) декодированного сигнала (s*(n)),
причем этапы выполнения адаптивного предсказания (921) и суммирования (930) содержат сбрасывание одного или более весовых значений (911) (ωi) для адаптивного предсказания в определенные моменты времени сброса и адаптирование весовых значений (911) к сигналу, который должен быть декодирован, между последующими сбросами.

18. Способ обработки сигнала, причем способ содержит:
способ кодирования по п. 15;
способ декодирования по одному из пп. с 16 по 17;
причем на этапе сбрасывания одного или более весовых значений сбросы выполняются синхронно.

19. Кодер (100) для кодирования с предсказанием сигнала (105), имеющего последовательность значений сигнала (s(n)), причем кодер (100) содержит:
блок (110) предсказания для выполнения адаптивного предсказания в зависимости от сигнала (105) (s(n)), и в зависимости от одного или более весовых значений (111) (ωi), для получения значений (115) предсказанного сигнала (s′(n)),
причем блок (110) предсказания выполнен с возможностью сбрасывания весовых значений (111) в моменты времени, которые зависят от сигнала (105), и
при этом блок (110) предсказания выполнен с возможностью адаптирования весовых значений (111) к сигналу (105) между последующими сбросами;
причем кодер (300) выполнен с возможностью определения параметра тональности из значений сигнала (s(n)) и выборочного выполнения сбросов в моменты времени, для которых сигнал является нетональным, в зависимости от определения тональности.

20. Кодер (100) для кодирования с предсказанием сигнала (105), имеющего последовательность значений сигнала (s(n)), причем кодер (100) содержит:
блок (110) предсказания для выполнения адаптивного предсказания в зависимости от сигнала (105) (s(n)), и в зависимости от одного или более весовых значений (111) (ωi), для получения значений (115) предсказанного сигнала (s′(n)),
причем блок (110) предсказания выполнен с возможностью сбрасывания весовых значений (111) в моменты времени, которые зависят от сигнала (105), и
при этом блок (110) предсказания выполнен с возможностью адаптирования весовых значений (111) к сигналу (105) между последующими сбросами;
причем кодер (360) выполнен с возможностью выполнения анализа остаточного сигнала для остаточного сигнала (105) δ(n), причем остаточный сигнал основан на разностях между значениями (105) сигнала (s(n)) и значениями (115) предсказанного сигнала (s′(n)), и выборочного выполнения сбросов в зависимости от анализа остаточного сигнала для остаточного сигнала, и при этом кодер (360) сконфигурирован для получения битового потока (355), представляющего сигнал (105) и содержащего последовательность кодированных значений (335) остаточного сигнала (δ′(n)), причем кодер выполнен с возможностью избегания включения флага сброса, указывающего сброс весовых значений, в битовый поток.

21. Кодер (360) по п. 19, причем кодер (360) выполнен с возможностью определения показателя выигрыша при кодировании из остаточного сигнала (325) (δ(n)) и выборочного выполнения сбросов в зависимости от показателя выигрыша при кодировании.

22. Способ кодирования с предсказанием сигнала (105), имеющего последовательность значений сигнала (s(n)), причем способ содержит этап, на котором:
выполняют адаптивное предсказание в зависимости от сигнала (105) (s(n)), и в зависимости от одного или более весовых значений (111) (ωi), чтобы получить значения (115) предсказанного сигнала (s′(n)),
причем этап выполнения адаптивного предсказания содержит сбрасывание весовых значений (111) в моменты времени, которые зависят от сигнала (105), и адаптирование весовых значений (111) к сигналу (105) между последующими сбросами;
причем способ содержит этап, на котором определяют параметр тональности из значений сигнала (s(n)), и при этом сбросы выборочно выполняются в моменты времени, для которых сигнал является нетональным, в зависимости от определения тональности.

23. Способ кодирования с предсказанием сигнала (105), имеющего последовательность значений сигнала (s(n)), причем способ содержит этап, на котором:
выполняют адаптивное предсказание в зависимости от сигнала (105) (s(n)), и в зависимости от одного или более весовых значений (111) (ωi), чтобы получить значения (115) предсказанного сигнала (s′(n)),
причем этап выполнения адаптивного предсказания содержит сбрасывание весовых значений (111) в моменты времени, которые зависят от сигнала (105), и адаптирование весовых значений (111) к сигналу (105) между последующими сбросами;
при этом способ содержит этап, на котором выполняют анализ остаточного сигнала для остаточного сигнала (325) (δ(n)), причем остаточный сигнал основан на разностях между значениями (105) сигнала (s(n)) и значениями (115) предсказанного сигнала (s′(n)), и причем сбросы выборочно выполняются в зависимости от анализа остаточного сигнала для остаточного сигнала, и получается битовый поток (355), представляющий сигнал (105) и содержащий последовательность кодированных значений (335) остаточного сигнала (δ′(n)), при этом избегают включения флага сброса, указывающего сброс весовых значений, в битовый поток.

24. Считываемый машиной носитель, хранящий компьютерную программу, имеющую программный код для выполнения способа кодирования с предсказанием по п. 15 или 22 или 23, когда упомянутая компьютерная программа выполняется на компьютере.

25. Считываемый машиной носитель, хранящий компьютерную программу, имеющую программный код для выполнения способа декодирования по одному из пп. с 16 по 17, когда упомянутая компьютерная программа выполняется на компьютере.

26. Считываемый машиной носитель, хранящий компьютерную программу, имеющую программный код для выполнения способа обработки сигнала по п. 18, когда упомянутая компьютерная программа выполняется на компьютере.



 

Похожие патенты:

Изобретение относится к средствам кодирования акустического сигнала. Технический результат заключается в повышении эффективности кодирования акустических сигналов при кодировании на низкой битовой скорости.

Изобретение относится к кодированию аудиосигнала, в частности к передаче длины элемента кадра. Технический результат - повышение точности кодирования аудиосигнала.

Изобретение относится к вычислительной технике. Технический результат заключается в исключении распространения ошибок при восстановлении значений.

Изобретение относится к технике связи и предназначено для моделирования цифровых сигналов и данных, кодирования-декодирования данных. Технический результат - повышение точности воспроизведения.

Изобретение относится к обработке звуковых сигналов и предназначено для их кодирования и декодирования. Технический результат - повышение качества звука путем расширения полосы частот.

Изобретение относится к декодеру аудиосигнала, генерирующему на выходе представление сигнала повышающего микширования на базе представления сигнала понижающего микширования и объектно-ориентированной параметрической информации.

Изобретение относится к средствам для обработки сигнала. Технический результат заключается в повышении качества декодированного сигнала.

Изобретение относится к области цифровой обработки сигналов. Технический результат заключается в увеличении коэффициента сжатия сигнала.

Изобретение относится к области передачи данных и предназначено для кодирования и декодирования данных. Технический результат - повышение точности воспроизведения данных и повышение качества звучания за счет расширения частотного диапазона.

Изобретение относится к технике связи. Технический результат - исключение артефактов, возникающих при обработке ограниченных во времени фреймов.

Заявленное изобретение относится к средствам для выдачи информации относительно достоверности закодированных аудиоданных. Технический результат заключается в обеспечении возможности обрезания недостоверных данных.

Изобретение относится к телекоммуникационным системам передачи акустических речевых сигналов, например к системам громкоговорящей связи. .

Изобретение относится к устройствам векторного квантования и деквантования для выполнения векторного квантования параметров LSP, используемых в устройстве кодирования/декодирования речи, которое передает речевые сигналы в областях системы пакетной связи.

Изобретение относится к способам и средствам для кодирования информации фонового шума в способе кодирования речевого сигнала. .

Изобретение относится к обработке речевых сигналов. .

Изобретение относится к системе электросвязи и предназначено для кодирования речевых сигналов на основе системы с переменной структурой. .

Изобретение относится к кодированию аудиосигнала. .

Изобретение относится к области обработки цифровых изображений. Технический результат - обеспечение увеличения быстродействия и эффективности сжатия изображений, устранение потери целостности изображения и сохранение контрастности границ между различными объектами изображения. Способ сжатия цифрового цветного изображения заключается в: разделении на цветовые компоненты, каждая из которых является цифровым полутоновым изображением, представленным g-разрядными двоичными числами; разделении цифрового полутонового изображения на разрядные двоичные изображения; выделении окрестности для каждого элемента изображения; применении для старших разрядных двоичных изображений, содержащих крупные элементы изображения, процедуры 1 предсказания элементов на основе коэффициентов корреляции по горизонтали и вертикали и теории условных марковских процессов и удалении правильно предсказанных; применении для младших разрядных двоичных изображений, содержащих мелкие детали изображения и фон, схожий по своей структуре с белым гауссовским шумом процедуры 2, предусматривающей выделение областей, содержащих детали изображения, и применении к ним процедуры 1; удалении областей, содержащих фон; кодировании битового потока. 1 з.п. ф-лы, 5 ил.
Наверх