УСТРОЙСТВО И СПОСОБ ДЛЯ ОБРАБОТКИ ДЕЙСТВИТЕЛЬНОГО СИГНАЛА ПОДДИАПАЗОНА ДЛЯ ОСЛАБЛЕНИЯ ЭФФЕКТОВ НАЛОЖЕНИЯ СПЕКТРОВ
DEVICE AND METHOD TO PROCESS ACTUAL SUBRANGE SIGNAL TO WEAKEN EFFECTS OF ALIASING

Настоящее изобретение относится к обработке аудио- или видеосигналов и, в частности, к банкам фильтров для преобразования сигнала в спектральное представление, причем спектральное представление содержит полосовые сигналы или спектральные коэффициенты.
Применительно к бытовой электронике и средствам связи желательно иметь возможность манипулирования спектрами сигналов путем частотно-избирательного увеличения или снижения интенсивности сигнала, например, для функций корректора или подавления эхо-сигнала. В связи со способами кодирования аудиосигнала, которые основаны на спектральном разложении входного сигнала, представляется необходимым соответственно усиливать и/или ослаблять декодированные спектральные компоненты (выборки поддиапазона и/или коэффициенты преобразования) посредством умножения на коэффициенты усиления, которые могут изменяться со временем. Однако используемые здесь банки фильтров обычно имеют действительные значения и обеспечивают критическую дискретизацию. Поэтому сигналы поддиапазона содержат компоненты наложения спектров, которые, однако, компенсируют друг друга, когда разложение (анализ) и слияние (синтез) осуществляются непосредственно друг за другом, но не после вышеописанной манипуляции. В результате могут возникать слышимые помехи, например, наподобие амплитудной модуляции.
0
N-1
0
1
N-1
0
N-1
0
1
N-1
0
1
N-1
На фиг. 5 показана система банков фильтров, содержащая банк 50 фильтров анализа и банк 51 фильтров синтеза. Сигнал дискретного времени x(n) поступает на полосовые фильтры 53 в количестве N для получения полосовых сигналов, децимируемых одним дециматором 54 для каждого канала банка фильтров. Децимированные полосовые сигналы с x(m) по x(m) поступают на каскад 55 коррекции, который связывает с каждым полосовым сигналом особый весовой коэффициент g, g, …, g. Взвешенные полосовые сигналы с y по y поступают на блок 56 интерполяции и фильтруются соответствующим фильтром 57 синтеза g, g, …, g. Затем фильтрованные сигналы суммируются посредством сумматора 58 для получения выходного сигнала y(n) на выходе 59 банка фильтров. Сигнал y(n) идентичен сигналу x(n), когда все коэффициенты усиления g, g, …, g ≈ 1, и когда фильтры 53 и 57 отрегулированы так, что банк фильтров имеет хорошо реконструирующую характеристику.
0
0
1
N-1
i
i
Следует отметить, что фильтры h обычно являются косинусно модулированными версиями фильтра-прототипа низких частот и что фильтры синтеза g, g, …, g также соответственно являются модулированными версиями фильтра-прототипа, в котором фильтр g согласован с фильтром h таким образом, что фильтрация не вносит никаких артефактов.
i
Существуют банки фильтров, содержащие, например, 20 каналов банка фильтров, благодаря чему 20 выборок сигнала x(n) дают по одной выборке каждого сигнала поддиапазона x. В этом случае банк фильтров считается максимально децимированным. Обычно банки фильтров реализуются численно эффективными математическими способами, благодаря чему фильтрация, происходящая на каждом канале, а также последующая децимация осуществляются на одном этапе обработки, так что не остается ни одного недецимированного сигнала. Однако известны также альтернативные реализации, которые реализуются в зависимости от требований.
Когда такой банк фильтров имеет очень много каналов, например 1024 канала, это представляет преобразование. Правило преобразования, так сказать, реализует фильтрацию и децимацию «одним ударом». MDCT, имеющее 1024 выборки, можно таким образом описать аналитической частью 50 банка фильтров, показанной на фиг. 5, причем N в этом случае равно 1024, и по одной выборке «сигнала поддиапазона» генерируется из каждого блока выборок, поступающего на такое преобразование. Временная форма сигнала поддиапазона получится при наличии нескольких блоков спектральных коэффициентов MDCT и если значение коэффициентов MDCT в последовательных блоках для частотного индекса имеет вид временного сигнала. Тогда вне зависимости от поддиапазонов и значений поддиапазона предполагаются поддиапазонная фильтрация и преобразование без конкретного указания каждый раз, что преобразование представляет максимально децимированную поддиапазонную фильтрацию, в которой количество каналов N равно количеству коэффициентов преобразования.
0
1
1
2
0
1
0
1
0
1
0
1
0
1
Критическая дискретизация используемых сигналов банка фильтров приводит к тому, что полосовые фильтры имеют область перекрытия, т.е., что, например, верхняя половина полосы пропускания фильтра h перекрывается с нижней половиной соседнего фильтра h. В то же время, верхняя область фильтра h(n) перекрывается с нижней областью следующего фильтра h(n). При наличии компонента сигнала в этой области перекрытия сигнал поддиапазона x(m) и сигнал поддиапазона x(m) будут иметь информацию об этом компоненте сигнала. Если оба поддиапазона одинаково усиливаются с коэффициентами усиления g и g, т.е. коэффициенты усиления равны, наложение спектров будет опять же ликвидировано фильтрами анализа g, g и последующим сложением выходных сигналов фильтров g и g, в результате чего выходной сигнал y(n) не будет иметь артефактов. Однако, если два сигнала x, x усиливаются по-разному, часть компонентов сигнала в области перекрытия также будет усиливаться иначе, в результате чего принятый сигнал y(n) будет иметь большее наложение спектров, поскольку банк фильтров синтеза «не ожидает» разного взвешивания двух перекрывающихся фильтров.
Таких артефактов можно избежать с использованием банков комплексных фильтров, которые, однако, не содержат критической дискретизации и таким образом не пригодны для кодирования. С другой стороны, такие банки комплексных фильтров используются в устройствах последующей обработки, например в устройствах расширения полосы (SBR) и в устройствах параметрического многоканального кодирования (BCC/EBCC).
Одно возможное, но дорогостоящее решение этой проблемы предусматривает применение действительного фильтра синтеза с последующими комплексным анализом, манипуляцией и комплексным синтезом. Затраты на реализацию этого подхода можно значительно снизить за счет аппроксимации последовательного применения действительного синтеза и комплексного анализа так называемой многополосной фильтрацией для генерации необходимых мнимых частей («r2i»). После соответствующего повторного преобразования в действительные части («i2r») можно применять традиционный действительный синтез.
k
i
Такое усложненное решение проблемы наложения спектров с использованием реализации банка комплексных фильтров показано на фиг. 6. Действительный сигнал, присутствующий в поддиапазонном представлении, преобразуется в действительный временной сигнал посредством банка фильтров действительного синтеза, который показан на фиг. 6 в виде выходного сигнала 61 банка 60 фильтров действительного синтеза. Этот действительный временной сигнал 61 поступает в банк 62 фильтров комплексного анализа для получения комплексных сигналов 63 поддиапазона. Эти комплексные сигналы 63 поддиапазона поступают на каскад 64 манипуляции, который принимает весовые коэффициенты c и/или весовые коэффициенты g, показанные на фиг. 5, и который может быть реализован таким же образом, как каскад 55 коррекции, показанный на фиг. 5. Каскад 64 манипуляции выводит манипулированные комплексные сигналы 65 поддиапазона, которые затем преобразуются в выходной сигнал 67, который опять же является действительным сигналом, посредством банка 66 фильтров комплексного синтеза. Для получения действительного сигнала 67 в банке 66 фильтров комплексного синтеза действительная часть формируется либо до суммирования, которое может быть идентично суммированию на сумматоре 58, показанном на фиг. 5, либо действительная часть формируется после суммирования 58. Однако мнимая часть просто отбрасывается. Обработка посредством устройства комплексного банка фильтров анализа/банка фильтров синтеза гарантирует, что в выходном сигнале 67 более не существует помех наложения спектров, обусловленных разной манипуляцией соседних поддиапазонов.
Однако это решение, как было упомянуто, очень сложно, поскольку, в отличие от прямой манипуляции, показанной на фиг. 5, требуются дополнительный банк фильтров комплексного анализа и дополнительный банк фильтров комплексного синтеза, причем эти банки фильтров усложнены с вычислительной токи зрения и создают задержку, поскольку фильтры анализа и/или фильтры синтеза содержат значительные длины фильтра, которые в действительности могут составлять более 30 отводов фильтра на банк фильтров, т.е. могут находиться как на стороне анализа, так и на стороне синтеза. С другой стороны, не вносится какое-либо наложение спектров.
Менее сложное решение предусматривает многополосную фильтрацию, показанную на фиг. 7, где временные и/или частотные сигналы соседних поддиапазонов объединятся, благодаря чему каскады 62, 66 обработки, показанные на фиг. 6, уже не требуются, но заменяются блоками r2i и i2r соответственно, показанными на фиг. 7. Таким образом, манипуляция осуществляется каскадами 64 или 55 манипуляции в комплексном представлении, т.е. между каскадами 70 и 71 на каскаде 72 на фиг. 7.
В преобразовании действительной величины в комплексную (r2c) последовательное соединение банка фильтров действительного синтеза и банка фильтров комплексного анализа аппроксимировано. Здесь мнимая часть для каждой действительной выборки поддиапазона формируется путем перекрытия трех выходных сигналов фильтра. Три соответствующих фильтра применяются в соответствующем поддиапазоне и двух соседних диапазонах.
Соответственно, преобразование комплексной величины в действительную (c2r) аппроксимирует последовательное соединение банка фильтров комплексного синтеза и банка фильтров действительного анализа. Здесь действительная часть формируется как среднее значение исходной действительной выборки поддиапазона и перекрытия трех выходных сигналов фильтра. Три соответствующих фильтра применяются к мнимым частям в соответствующем поддиапазоне и двух соседних диапазонах.
Последовательное соединение r2c и c2r должно реконструировать исходный сигнал поддиапазона как можно точнее во избежание слышимых помех в выходном сигнале. Таким образом, соответствующие фильтры должны иметь относительно большие длины.
Многополосная фильтрация, которую можно применять с достижением преимущества, описана в патенте Германии DE 10234130 B3. Устройство банка фильтров для генерации комплексного спектрального представления сигнала дискретного времени включает в себя средство для генерации блочного действительного спектрального представления сигнала дискретного времени, причем спектральное представление содержит последовательные по времени блоки, причем блок содержит набор действительных спектральных коэффициентов. В качестве дополнения, средство для последующей обработки блочного действительного спектрального представления предусмотрено для получения блочного комплексного приближенного спектрального представления, содержащего последовательные блоки, причем каждый блок содержит набор комплексных приближенных спектральных коэффициентов, причем комплексный приближенный спектральный коэффициент можно представить первым суб-спектральным коэффициентом и вторым суб-спектральным коэффициентом, причем, по меньшей мере, первый или второй суб-спектральный коэффициент можно вычислять путем объединения по меньшей мере двух действительных спектральных коэффициентов. Первый суб-спектральный коэффициент представляет собой действительную часть комплексного приближенного спектрального коэффициента, и второй суб-спектральный коэффициент представляет собой мнимую часть комплексного приближенного спектрального коэффициента. Объединение является линейной комбинацией, и средство для последующей обработки реализовано для объединения, для определения комплексного спектрального коэффициента определенной частоты, действительного спектрального коэффициента частоты и действительного спектрального коэффициента соседней более высокой или более низкой частоты или соответствующего действительного спектрального коэффициента текущего блока, предшествующего по времени блока или последующего по времени блока.
Эта процедура имеет недостаток, заключающийся в необходимости относительно длинных фильтров для получения представления, свободного от наложения спектров, в частности, в случае отсутствия разного взвешивания в двух соседних поддиапазонах, но не в так называемом «мягком» случае, когда оба поддиапазона взвешиваются одинаково. Если использовать слишком короткие фильтры, наложение спектров будет возникать также в мягком случае, что неприемлемо и приводит к большим длинам фильтра в блоках 70 r2i и/или 71 i2r, показанных на фиг. 7. Большие длины фильтра, однако, в то же время означают вычислительную сложность и, в частности, большую задержку, которая также нежелательна в определенных областях применения.
Задачей настоящего изобретения является обеспечение эффективной и одновременно высококачественной концепции обработки сигналов.
Для решения этой задачи предусмотрены устройство для обработки действительного сигнала поддиапазона по п.1 формулы изобретения, способ обработки действительного сигнала поддиапазона по п.24 формулы, банк фильтров анализа по п.25 формулы, банк фильтров синтеза по п.26 формулы, способ анализа сигнала по п.27 формулы, способ синтеза сигнала по п.28 формулы или компьютерная программа по п.29 формулы.
Настоящее изобретение основано на том факте, что проблемы больших артефактов или, вместо этого, больших длин фильтра можно решить, разделив поддиапазонную фильтрацию на нормальную часть, включающую в себя поддиапазон, взвешенный весовым коэффициентом для особого поддиапазона, и корректировочную часть, зависящую от другого поддиапазона и весового коэффициента для другого поддиапазона. Таким образом достигается эффективная реализация, поскольку длинные фильтры для генерации нормальной части уже не нужны, согласно изобретению, поскольку эта нормальная часть более не фильтруется «назад и вперед», но просто взвешивается. Проблема наложения спектров решается с использованием корректировочной части, вычисляемой в зависимости от другого поддиапазона, который будет, например, соседним поддиапазоном, и в зависимости от весового коэффициента для этого поддиапазона. Чтобы сделать поддиапазон, взвешенный согласно изобретению, «защищенным от наложения спектров», корректировочную часть объединяют с взвешенным поддиапазоном, например суммируют, для получения скорректированного сигнала поддиапазона, приводящего к снижению наложения спектров.
Настоящее изобретение имеет преимущество, состоящее в том, что основная часть скорректированного сигнала поддиапазона вычисляется непосредственно, т.е. только с использованием взвешивания весовым коэффициентом, обеспеченным для этого сигнала поддиапазона, без использования фильтрации. Это экономит время вычисления и, одновременно, вычислительную мощность, что особенно важно, в частности для мобильных устройств или устройств с автономным питанием. Более не нужна фильтрация самого поддиапазона посредством длинного фильтра анализа и последующего фильтра синтеза. Вместо этого нужно лишь взвешивать выборку за выборкой. Это достигается за счет деления на взвешенную часть и корректировочный член.
Корректировочный член можно дополнительно вычислять с помощью значительно более коротких фильтров, поскольку точность корректировочной части не должна быть столь высокой как точность нормальной части. Согласно изобретению можно достигать любого масштабирования, в том смысле, что фильтры для корректировочной части можно сделать длиннее, тем самым дополнительно снизив наложение спектров, но, в частности, когда небольшое наложение спектров все же допустимо, что очень малые длины фильтра можно использовать для вычисления корректировочных частей, которые в предельном случае могут даже сводиться к чистому умножению на коэффициент и последующему сложению, причем в этом случае наложение спектров будет сильнее, чем в случае длины фильтра, например более 8 отводов фильтра. С другой стороны, согласно изобретению это обеспечивается разделением на нормальную составляющую и коррекционную составляющую, в которые при наличии мягкой поддиапазонной обработки, то есть когда соседние поддиапазоны подлежат взвешиванию одним и тем же весовым коэффициентом, не будет вноситься никакой помехи несмотря на использование только коротких фильтров. В этом случае согласно изобретению корректировочную часть можно просто задать равной нулю, что можно осуществлять вручную, что, однако, также может быть выполнено автоматически, когда корректировочный член взвешивания взвешивается разностью весовых коэффициентов для двух соседних поддиапазонов. Если разность равна нулю, два коэффициента усиления будут равны, то есть корректировочный член будет задан равным нулю независимо от того, насколько он велик, независимо от того, будет ли корректировочный член обеспечивать лишь грубую коррекцию или даже точную коррекцию. Если корректировочный член вычислен более точно, для этого случая идентичных весовых коэффициентов он сам по себе должен быть равен нулю. Однако в этом случае при наличии только грубой коррекции получится корректировочный член, не равный нулю, что, однако, не ухудшает результат, поскольку взвешивание было осуществлено с использованием разности корректировочных коэффициентов.
В зависимости от реализации корректировочный член не создается только с одним сигналом поддиапазона, но с двумя сигналами соседних поддиапазонов и/или со столькими сигналами соседних поддиапазонов, с которыми имеется значительное перекрытие диапазонов, т.е. в области фильтра, где фильтр имеет ослабление, например, менее 30 дБ. В случае перекрытия более трех фильтров, более трех фильтров будут учитываться при вычислении корректировочного члена и также, конечно, связанных с ним корректировочных коэффициентов.
Заметим, что концепция изобретения может быть реализована не только для банков фильтров, имеющих относительно малое количество каналов, где сигналы поддиапазона являются полосовыми сигналами. Напротив, концепцию изобретения также можно применять к банкам фильтров, имеющим большое количество каналов банка фильтров, например банкам фильтров, реализованным посредством преобразования. Такое преобразование является, например, FFT, DCT, MDCT или другим максимально децимированным преобразованием, где один спектральный коэффициент для каждого канала банка фильтров генерируется для каждого блока выборок. Спектральные коэффициенты, имеющие один и тот же индекс коэффициентов из последовательности последовательных по времени блоков спектральных коэффициентов, представляют полосовой сигнал, который можно фильтровать в целях определения корректировочного члена для получения корректировочного члена.
Предпочтительные варианты осуществления настоящего изобретения подробно описаны ниже в прилагаемых чертежах, на которых изображено:
фиг. 1 - блок-схема устройства согласно изобретению для обработки действительного сигнала поддиапазона согласно предпочтительному варианту осуществления настоящего изобретения;
фиг. 2 - подробная схема блока определения корректировочного члена, показанного на фиг. 1;
фиг. 3a - схема устройства согласно изобретению согласно предпочтительному варианту осуществления настоящего изобретения;
фиг. 3b - более подробная схема фильтрующей части, показанной на фиг. 3a;
фиг. 3c - схема устройства согласно изобретению согласно альтернативному варианту осуществления настоящего изобретения;
фиг. 3d - более подробная схема устройства, схематически показанного на фиг. 3c;
фиг. 4 - устройство банка фильтров анализа/банка фильтров синтеза, имеющее устройство для обработки каждого поддиапазона;
фиг. 5 - устройство банка фильтров действительного анализа/синтеза, имеющее каскад коррекции;
фиг. 6 - схема объединения банка фильтров действительного синтеза с банком фильтров комплексного анализа и банком фильтров комплексного синтеза;
фиг. 7 - схема многополосной фильтрации;
фиг. 8 - более подробная схема операций фильтра для многополосной фильтрации, показанной на фиг. 7;
фиг. 9 - табличное представление фильтров для сигналов поддиапазона, имеющих четные и нечетные индексы;
фиг. 10 - иллюстративное сравнение амплитудно-частотных характеристик фильтров для определения корректировочного члена;
фиг. 11 - поддиапазонная фильтрация импульса;
фиг. 12 - поддиапазонная фильтрация синусоидального тона на 1% выше предела диапазона;
фиг. 13 - поддиапазонная фильтрация синусоидального тона на 5% выше предела диапазона;
фиг. 14 - поддиапазонная фильтрация синусоидального тона на 10% выше предела диапазона;
фиг. 15 - поддиапазонная фильтрация синусоидального тона на 20% выше предела диапазона;
фиг. 16 - поддиапазонная фильтрация синусоидального тона на 30% выше предела диапазона;
фиг. 17 - поддиапазонная фильтрация синусоидального тона на 40% выше предела диапазона; и
фиг. 18 - схематическое представление снижения наложения спектров для MDCT с помощью синусоидального тона на 10% выше предела диапазона.
k
k
k
На фиг. 1 показано устройство согласно изобретению для обработки действительного сигнала поддиапазона x(k) совокупности действительных сигналов поддиапазона, которые представляют действительный сигнал дискретного времени x(n), генерируемый банком фильтров анализа (50 на фиг. 5). Устройство согласно изобретению включает в себя блок взвешивания 10 для взвешивания сигнала поддиапазона x весовым коэффициентом c, определяемым для сигнала поддиапазона для получения сигнала взвешенного поддиапазона 11. Блок взвешивания предпочтительно реализовать для осуществления умножения. В частности, выборки поддиапазона, которые являются выборками полосового сигнала или спектральными коэффициентами спектра преобразования, умножаются на корректировочный коэффициент. В качестве альтернативы, вместо умножения можно также осуществлять сложение логарифмических значений, а именно сложение логарифма корректировочного значения и логарифма выборки поддиапазона x.
1
1
k
k
Устройство согласно изобретению для обработки дополнительно включает в себя блок определения корректировочного члена для вычисления корректировочного члена, причем блок определения корректировочного члена выполнен с возможностью вычисления корректировочного члена с использованием по меньшей мере сигнала другого поддиапазона x и с использованием другого весового коэффициента c, который обеспечен для сигнала другого поддиапазона, причем другой весовой коэффициент отличается от весового коэффициента c. Это различие между двумя весовыми коэффициентами является причиной наложения спектров при применении банка действительных фильтров, даже когда фильтры анализа и синтеза имеют хорошо реконструирующую характеристику. Корректировочный член на выходе средства 12 поступает на объединитель 13, поскольку является сигналом взвешенного поддиапазона, причем объединитель выполнен с возможностью объединения сигнала взвешенного поддиапазона и корректировочного члена для получения скорректированного сигнала поддиапазона y.
k
k
Объединитель 13 предпочтительно выполнен с возможностью осуществления объединения выборки за выборкой. Таким образом, существует «выборка корректировочного члена» для каждой выборки сигнала взвешенного поддиапазона x, что позволяет осуществлять коррекцию 1:1. Однако в качестве альтернативы для менее вычислительно сложных реализаций коррекцию можно осуществлять так, чтобы, например, один корректировочный член вычислялся для некоторого количества взвешенных выборок поддиапазона, которые затем суммируются со сглаживанием или без него с каждой выборкой из группы выборок, связанных с выборкой корректировочного члена. В зависимости от реализации, корректировочный член также можно вычислять как множитель, а не как слагаемое. Объединитель в этом случае осуществляет умножение корректировочного члена на сигнал взвешенного поддиапазона для получения скорректированного сигнала поддиапазона y.
Следует заметить, что наложение спектров происходит, когда два сигнала поддиапазона генерируются фильтрами, имеющими перекрывающиеся характеристики пропускания. В особых реализациях банка фильтров существуют перекрывающиеся характеристики фильтра, содержащие область перекрытия, которая имеет значительную протяженность для сигналов соседних поддиапазонов.
k+1
k+1
k+1
k
k
Предпочтительно реализовать блок определения корректировочного члена таким образом, как показано на фиг. 2. Блок определения корректировочного члена включает в себя часть 12a блока определения первого корректировочного члена и часть 12b блока определения второго корректировочного члена. Часть блока определения первого корректировочного члена учитывает перекрытие сигнала текущего поддиапазона с индексом k и сигнала следующего в сторону повышения поддиапазона с индексом k+1. Дополнительно, часть 12a блока определения корректировочного члена, отдельного от сигнала поддиапазона x, также принимает весовой коэффициент c сигнала более высокого поддиапазона. Предпочтительно, блок определения корректировочного члена также принимает разность c и c, которая на фиг. 2 представлена как q.
k
k-1
k-1
k-1
k-1
k
k
Часть 12b блока определения второго корректировочного члена учитывает перекрытие сигнала поддиапазона x с сигналом поддиапазона x, индекс которого ниже на 1. Таким образом, часть 12b блока определения корректировочного члена помимо сигнала поддиапазона x также принимает весовой коэффициент c для этого поддиапазона и предпочтительно также принимает разность весового коэффициента c и весового коэффициента c, которая на фиг. 2 представлена как p.
k
k
k
k
k
k
На выходной стороне часть 12a блока определения первого корректировочного члена обеспечивает первый корректировочный член q·U, и часть блока определения второго корректировочного члена 12b обеспечивает второй корректировочный член p·L, причем эти два корректировочных члена суммируются для объединения с сигналом взвешенного поддиапазона c·x, что будет описано со ссылкой на фиг. 3a и 3b.
Ниже подробно описана предпочтительная реализация, показанная на фиг. 8 и 3a.
Последовательное соединение банка фильтров действительного синтеза и банка фильтров комплексного анализа аппроксимируется в многополосной фильтрации. Здесь мнимая часть для каждой действительной выборки поддиапазона формируется путем перекрытия трех выходных сигналов фильтра. Три соответствующих фильтра применяются в соответствующем поддиапазоне и двух соседних диапазонах.
Соответственно, преобразование комплексной величины в действительную (c2r) аппроксимирует последовательное соединение банка фильтров комплексного синтеза и банка фильтров действительного анализа. Здесь, действительная часть формируется как среднее значение исходной действительной выборки поддиапазона и перекрытия трех выходных сигналов фильтра. Три соответствующих фильтра применяются к мнимым частям в соответствующем поддиапазоне и двух соседних диапазонах.
Последовательное соединение r2c и c2r должно реконструировать исходный сигнал поддиапазона как можно точнее, во избежание слышимых помех в выходном сигнале. Таким образом соответствующие фильтры должны иметь относительно большие длины.
Представленный здесь подход базируется на идее подразделения последовательного соединения «r2c», «регулировки усиления» и «c2r» на участки сигнала, формирующиеся с использованием равных коэффициентов усиления, и участки сигнала, формирующиеся вследствие разностей между коэффициентами усиления соседних поддиапазонов.
Поскольку первая часть сигнала должна соответствовать исходному сигналу поддиапазона, соответствующую операцию можно опустить.
Остальные участки сигнала зависят от разностей соответствующих коэффициентов усиления и служат только для уменьшения компонентов наложения спектров, которые имели бы место в обычном преобразовании r2c и c2r. Поскольку соответствующие фильтры не влияют на реконструкцию неизмененных сигналов поддиапазона, они могут содержать значительно меньшие длины.
Далее процедура будет рассмотрена более подробно.
Мнимая часть в поддиапазоне k вычисляется из действительных выборок поддиапазона для поддиапазонов k, k-1 и k+1 в виде:
Различия между H и H' необходимы вследствие зеркального отражения поддиапазонов, имеющих нечетные индексы.
k
Если каждый поддиапазон умножается на коэффициент усиления c, результат для реконструированного сигнала в поддиапазоне k с учетом дополнительного нормирующего коэффициента 0.5 будет:
k-1
k
k
k
k-1
k
k+1
k
k
Если c заменить на c+p, где p=c-c, и если c заменить на c+q,
k
k+1
k
где q=c-c, получится:
k
Здесь первый член соответствует сигналу поддиапазона, который реконструируется с использованием одних и тех же коэффициентов усиления во всех поддиапазонах и таким образом является равным исходному сигналу поддиапазона за исключением коэффициента c и/или должен иметь близкое значение. Однако второй член представляет влияние разных коэффициентов усиления и может рассматриваться как корректировочный член для поддиапазона k комплексной обработки по сравнению с действительной обработкой. Он вычисляется следующим образом:
Нижеследующие соотношения вытекают из характеристик многофазного банка фильтров и зеркального отражения поддиапазонов, имеющих нечетные индексы:
Подстановка дает следующий результат:
Поскольку реконструкция больше не зависит от фильтров, используемых с коэффициентами усиления, постоянными на протяжении поддиапазонов, их можно заменить более короткими, причем соответствующий фильтр произведения также можно аппроксимировать так, чтобы два корректировочных члена можно было затем вычислить вместо мнимой части:
,
где
Нужный сигнал поддиапазона, включающий в себя компенсацию наложения спектров, получается посредством взвешенного перекрытия исходного сигнала поддиапазона и двух сигналов коррекции:
Однако в практических реализациях следует помнить, что задержка, компенсирующая задержку на соответствующих трактах сигнала, включающих в себя фильтрацию, должна вноситься в тракты сигнала без фильтрации.
Для проверки общей производительности следующие изображения демонстрируют выходные сигналы после банка фильтров анализа, ослабление поддиапазона на 20 дБ и последующий банк фильтров синтеза для разных входных сигналов.
Описанный подход также можно объединять с MDCT вместо банка фильтров, используемого в EBCC.
Для этого генерируются подходящие коэффициенты фильтра для фильтров, имеющих длину 5. Это соответствует фильтрам без среза, обусловленным последовательным применением соответствующих преобразований и/или повторных преобразований. Однако по сравнению с технологией «r2c-c2r» новый способ имеет преимущество в отсутствии генерации ошибок аппроксимации, поскольку спектр MDCT остается неизменным. Однако использование «r2c-c2r» приводит к ошибкам, поскольку в аппроксимации учитываются только два соответствующих соседних диапазона.
Результирующие спектры сигнала для синусоидального тона, который на 10% выше предела диапазона, показывают, что компоненты наложения спектров также очень эффективно сокращаются при использовании MDCT. Здесь соседний диапазон также ослаблен на 10 дБ.
Таким образом, функции корректора и/или методы подавления эхо-сигналов можно интегрировать непосредственно в аудиодекодер, например, MPEG-AAC посредством обратного MDCT до повторного преобразования.
k
k
k-1
u
k+1
l
k-1
m
k
k-1
u
k+1
k
1
k+2
k-2
На фиг. 8 показана схема операций фильтра для преобразования действительной величины в комплексную (r2c) и преобразования комплексной величины в действительную (c2r). Мнимый компонент I диапазона x генерируется сигналом поддиапазона x, фильтрованным фильтром H', и сигналом поддиапазона для поддиапазона x, генерируемым фильтром H'. Кроме того, компонент сигнала поддиапазона x, фильтрованный фильтром H, вносит вклад в мнимый компонент I. Поскольку часть сигнала поддиапазона x, перекрытая фильтром k, имеет низкочастотную характеристику, фильтр H' является фильтром низких частот. Аналогично, часть верхнего сигнала поддиапазона x, перекрытая фильтром для x, является высокочастотным сигналом, поэтому H' является фильтром высоких частот. Как уже было объяснено, H и H' отличают для учета зеркального отражения поддиапазонов, имеющих нечетные индексы. Этот перегиб H и H' проиллюстрирован на фиг. 9 для мнимых частей поддиапазонов от I до I. Кроме того, индекс «m» обозначает «средний» и отражает вклад сигнала центрального поддиапазона. Кроме того, индекс «l» обозначает «низкий» и отражает вклад нижнего поддиапазона, показанного на фиг. 8, относительно текущего поддиапазона, т.е. поддиапазона, имеющего индекс, который меньше на 1. Аналогично, «u» обозначает «верхний» и отражает вклад поддиапазона, показанного в верхней части фиг. 8, относительно текущего поддиапазона, т.е. поддиапазона, имеющего индекс, который больше на 1.
l
u
u
u
1
u
l
l
u
l
Фильтры G синтеза, соответствующие отдельным фильтрам H анализа, показаны на фиг. 8. G имеет высокочастотную характеристику, тогда как G имеет низкочастотную характеристику. Таким образом, как было описано выше, произведение G' и H равно произведению H и H, или произведение G' и H равно произведению H и H и примерно равно 0, поскольку здесь соответствующий фильтр высоких частот умножается на фильтр низких частот, и результирующая частотная характеристика фильтра высоких частот и фильтра низких частот, имеющих сходные частоты среза, равна 0 и/или близка к 0. Даже в случаях, когда частоты среза не идентичны, но отстоят друг от друга, результирующая частотная характеристика равна 0. Если частота среза фильтра низких частот меньше частоты среза фильтра высоких частот, результирующая частотная характеристика также равна 0. Только в случае, когда частота среза фильтра низких частот больше частоты среза фильтра высоких частот, вышеописанная аппроксимация будет неверна. Однако такая ситуация не происходит в типичных многофазных банках фильтров и/или приведет, если произойдет, только к небольшим помехам, которые приведут к несколько менее точному корректировочному члену. В силу того, что корректировочный член предпочтительно взвешивать разностью двух соответствующих весовых коэффициентов, эта ошибка также будет уменьшаться с уменьшением разности.
k
lm
ll
uu
um
k
k
k
k
k+1
lm
k
ll
k
uu
k+1
um
k
k
k
k
На фиг. 3 показана схема предпочтительных фильтров, выведенных выше, которые реализованы блоком 12 определения корректировочного члена согласно изобретению. Из фиг. 3a следует, что устройство в целом включает в себя фильтрующую часть 30 и взвешивающую часть 31. Блок 10 взвешивания, показанный на фиг. 1, обозначенный во взвешивающей части 31 на фиг. 3a как c, находится во взвешивающей части 31. Объединитель 13 на фиг. 1 соответствует сумматору 13 на фиг. 3a. Блок 12 определения корректировочного члена включает в себя действия фильтра с четырьмя фильтрами H, H, H и H. Кроме того, блок определения корректировочного члена также включает в себя взвешивание невзвешенных корректировочных членов L и U разностью соответствующих двух весовых коэффициентов, т.е. q и p, соответственно, как указано во взвешивающей части 31. Более подробная реализация фильтрующей части фиг. 3a показана на фиг. 3b. Сигнал поддиапазона x поступает на фильтр низких частот H 32. Кроме того, сигнал поддиапазона x поступает на фильтр 33 низких частот H. Кроме того, сигнал поддиапазона x поступает на фильтр 34 высоких частот H и, кроме того, сигнал следующего поддиапазона x поступает на фильтр 35 H, который также можно реализовать как фильтр высоких частот. Выходные сигналы фильтров 32 и 33 объединяются в сумматоре 34 и представляют первый невзвешенный корректировочный член l. Дополнительно, выходные сигналы фильтров 34 и 35 суммируются в сумматоре 35 и представляют второй невзвешенный корректировочный член u. Кроме того, задержка фильтров, происходящая, когда фильтры реализованы как цифровые фильтры, т.е. фильтры КИХ или БИХ, учитывается для сигнала поддиапазона x, который взвешивается весовым коэффициентом c, обеспеченным для этого сигнала поддиапазона. Этот учет задержек фильтров 33-35 осуществляется на каскаде 38 задержки и может происходить до или после взвешивания. Чтобы такая реализация достигла максимального качества, предпочтительно, чтобы все длины фильтра 32, 33, 34, 35 были одинаковы, и чтобы задержка 38 регулировалась в соответствии с длиной фильтра для фильтров 32-35. Если, например, каждый из фильтров 32-35 имеет длину фильтра 11, задержка 38 должна обеспечивать величину задержки в пять выборок сигнала поддиапазона.
k
k
В то время как на фиг. 3a и 3b показан случай, когда фильтры 32, 33, 34, 35 представлены в виде фильтров произведения, т.е. как фильтры для вычисления членов l, u, которые затем нужно только взвешивать, на фиг. 3c и 3d показан вариант осуществления реализации настоящего изобретения, где корректировочный член вычисляется не четырьмя фильтрами произведения, а всеми шестью отдельными фильтрами 320, 330, 340, 350, 381, 382.
k
k-1
m
k
l
k
k
u
k+1
m
k
u
K
k
k
h
l
u
Как показано, в частности, на фиг. 3c, сигнал L вычисляется путем фильтрации X фильтром H и прибавлением фильтрованного сигнала X, фильтрованного фильтром H. Опять же, используется нормирующий коэффициент 0,5. Однако этот нормирующий коэффициент можно опустить, как в случае первого варианта осуществления, или задать равным другому значению, в том числе 1. Кроме того, другой компонент U вычисляется путем фильтрации X фильтром H, где X·H вычитается из X·H. В отличие от уравнений, показанных согласно фиг. 3a, где произведения уже учтены в фильтрах, сигналы на фиг. 3c фильтруются по отдельности. Затем результаты L и U, как показано на фиг. 3a, взвешиваются величинами p и q соответственно. Помимо этого взвешивания осуществляется фильтрация фильтрами H и H.
l
u
k-1
k+1
k
k
l
u
-d
В отличие от фиг. 3a, существует первая фильтрующая часть и, дополнительно, вторая фильтрующая часть, которая может быть интегрирована и/или объединена с взвешивающей частью. Таким образом, весовые коэффициенты могут быть уже учтены в коэффициентах фильтра или могут быть применены отдельно до или после фильтрации цифровым фильтром H и/или H. Таким образом, задержки z учитывают задержку, обусловленную фильтрацией в первой фильтрующей части двух компонентов X и/или X, и дополнительно учитывают задержки во второй фильтрующей части, обусловленные фильтрацией L и/или U, которые фильтруются фильтрами H и/или H.
m
l
u
l
u
m
l
ll
l
u
lm
um
Хотя в зависимости от реализуемого банка фильтров любые характеристики фильтра можно использовать для фильтров H, H, H, предпочтительно использовать фильтр низких частот для H, предпочтительно использовать фильтр высоких частот для H и/или также предпочтительно использовать полосовой фильтр для H. Фильтр H имеет вид, аналогичный показанному на фиг. 10, поскольку H 100 на фиг. 10 равен квадрату фильтра H. Фильтр H, реализованный как фильтр высоких частот, приводит к зеркальному отражению левой части на фиг. 10 относительно вертикальной оси в позиции π/2, т.е. относительно центра фиг. 10. Фильтр H, которого уже нет на фиг. 3c, поскольку он является фильтром произведения полосового фильтра и фильтра низких частот, можно зеркально отразить относительно линии в позиции π/2 для получения фильтра H 35 на фиг. 3b, хотя этого фильтра произведения в собранном виде уже нет на фиг. 3c, но сначала упомянутый фильтр вычисляют в неявной форме до объединения компонентов объединителем 13.
k
k
k
k
k
k
k
k
Хотя согласно фиг. 3b блок 12 определения корректировочного члена, показанный на фиг. 3a, реализован фильтрующей частью 30 и взвешиванием компонентов L, U весовыми коэффициентами p и q, определение корректировочного члена согласно фиг. 3c и 3d осуществляется в виде каскада двойного фильтра, где сначала вычисляются сигналы L, U на выходе сумматоров 360 и/или 370, без использования фильтров произведения, но с использованием отдельных фильтров, причем во второй фильтрующей части взвешивание величинами p и/или q затем осуществляется с последующей индивидуальной фильтрацией.
k
Однако взвешивание сигнала поддиапазона X блоком взвешивания 10 происходит на фиг. 3d наподобие фиг. 3a.
k-1
k
k+1
u
m
l
Согласно варианту осуществления, показанному на фиг. 3c и фиг. 3d, или в общем случае, два фильтра не объединяются для образования фильтра произведения. Вместо этого они реализуются как отдельные фильтры. Даже в отсутствие объединения на фильтре произведения все же независимо от реализации существует преимущество сокращения длин фильтра. Таким образом, задержка по сравнению с прямым повторным вычислением преобразования действительной величины в комплексную и/или преобразования комплексной величины в действительную снижается. Тильда над фильтрами в блоках 320, 330, 340, 350, 381, 382 означает, что фильтры, схематически указанные на фиг. 10 для фильтров произведения, сокращаются по своей длине фильтра по сравнению с поддиапазонным фильтром нормального банка фильтров. Предпочтительно использовать длины фильтра, которые меньше длины фильтра поддиапазонного фильтра для генерации сигналов поддиапазона x, x и/или x. Кроме того, предпочтительно, чтобы длина фильтра для фильтров h, h, h после аппроксимации, т.е. после сокращения, составляла, как в другом случае, самое большее 50% длины фильтра, который использовался для генерации сигнала поддиапазона путем применения нескольких таких фильтров в банке поддиапазонных фильтров.
Предпочтительно, чтобы длины фильтра были меньше 21, причем задержка таких фильтров меньше 10. Реализация, показанная на фиг. 3d, обеспечивает по сравнению с реализацией, показанной на фиг. 3a и b, преимущества быстрого изменения со временем коэффициентов ослабления. В отношении временной формы реализация, показанная на фиг. 3d, больше похожа на реализацию преобразования действительного/комплексного и комплексного/действительного, тогда как в реализации фильтра произведения фильтрация уже не происходит после применения коэффициентов усиления.
Независимо от того, выбрана ли реализация отдельных сокращенных фильтров или суммирования фильтров произведения, согласно изобретению реализуются быстрые банки действительных фильтров со снижением наложения спектров. В конкретных предпочтительных вариантах осуществления длины фильтра на фиг. 3d еще короче по сравнению с длинами фильтра на фиг. 3b при том, что полное вычисление на фиг. 3d имеет задержку, сходную с полным вычислением на фиг. 3b. Реализация, сходная с фиг. 3b, применяется на фиг. 3d для фильтров в первой фильтрующей части, чтобы длина фильтра составляла 7 коэффициентов, что будет соответствовать величине задержки в 3 выборки сигнала чтобы длина фильтра составляла 7 коэффициентов, что будет соответствовать величине задержки в 3 выборки сигнала поддиапазона. В этом случае вторая задержка 383 и/или последующие фильтры 381, 382, например, будут иметь длину фильтра 4 для реализации задержки 2. Здесь указано, что несколько более длинные или несколько более короткие фильтры и/или реализация на фиг. 3d также будут обеспечивать преимущества, когда общая задержка несколько больше задержки фильтра произведения на фиг. 3b.
На фиг. 4 показано применение устройства для взвешивания, описанного на фиг. 1-3d в банке фильтров анализа и/или банке фильтров синтеза. Из фиг. 4 следует, что для каждого канала фильтра от 0 до N-1, необходимо одно устройство, показанное на фиг. 1. Предпочтительно, однако, чтобы каждое устройство для обработки имело при реализации, подобной фиг. 3b, те же четыре фильтра 32-35, так, чтобы только эти четыре фильтра подлежали вычислению и/или оптимизации независимо от количества сигналов поддиапазона и/или каналов фильтра банка фильтров анализа/синтеза.
Фактическое вычисление фильтров можно осуществлять либо посредством прямого вычисления из фильтров-прототипов анализа/синтеза, либо посредством численной оптимизации, которые обычно производятся с помощью компьютера. В такой численной оптимизации фильтров 32-35 длина фильтра заранее устанавливается так, чтобы можно было получить набор фильтров для разных длин фильтра. Как в частности показано на фиг. 10, отмеченная низкочастотная характеристика получается для фильтра 100, этот фильтр с очень заметным ослаблением в области блокировки можно аппроксимировать значительно более короткими фильтрами, а именно фильтрами 102 или 103. Фильтры 102 и 103 имеют длину фильтра только 11 и таким образом аппроксимируют фильтры 100 и 101. Однако можно видеть, что в области низких частот отклонения очень малы, и рост наблюдается только на более высоких частотах. Однако, с другой стороны, блокировочное ослабление более 40 дБ обеспечивается фильтрами 102 и 103, благодаря чему эти очень короткие фильтры уже вызывают хорошее подавление наложения спектров.
На фиг. 11 показана характеристика банка фильтров для импульса в позиции 8 в течение периода выборки поддиапазона. Банк действительных фильтров обеспечивает форму, обозначенную 110. Банк комплексных фильтров обеспечивает форму, обозначенную 112. Банк действительных фильтров, включающий в себя коррекцию согласно настоящему изобретению, обеспечивает форму, обозначенную 111. Можно видеть, что банк действительных фильтров, включающий в себя коррекцию, имеет примерно такую же форму, как банк комплексных фильтров, однако может быть реализован значительно дешевле. Только непосредственно на пределе диапазона между k-1 и k банк действительных фильтров, включающий в себя коррекцию, имеет волнообразную форму, что можно объяснить тем фактом, что используются только длины фильтра 11, как показано на фиг. 10, вместо полных фильтров, показанных на фиг. 10. Очевидно, что расхождение между банком действительных фильтров, включающим в себя коррекцию, и банком комплексных фильтров, устойчивым к наложению спектров, пренебрежимо мало, хотя уже используются короткие фильтры 32-35 на фиг. 3b. Расхождение между формами 111 и 112 увеличивается с уменьшением длин фильтра, однако для варианта с оптимизированной задержкой можно использовать длины фильтра меньше 5, при которых расхождение между кривыми 111 и 112 остаются допустимыми.
Далее, на фиг. 12 показана характеристика банка фильтров при использовании синусоидального тона на 1% выше предела диапазона. Входной сигнал 121 представляет синусоидальный тон. Банк действительных фильтров будет создавать наложение спектров, что проиллюстрировано кривой 122. Наложение спектров становится заметным за счет «вторичного пика» 125, причем этот вторичный пик обусловлен тем фактом, что соседние диапазоны k-1 и k взвешены разными весовыми коэффициентами. Опять же, очевидно, что банк комплексных фильтров не имеет такого вторичного пика, т.е. не генерирует такое наложение спектров, и что банк комплексных фильтров оптимально аппроксимируется банком действительных фильтров, включающим в себя коррекцию, причем отклонение банка действительных фильтров от банка комплексных фильтров имеет место только в области 126. Банк действительных фильтров обеспечивает более сильное ослабление, чем банк комплексных фильтров, что, в свою очередь, можно объяснить тем фактом, что длины фильтра для фильтров 32-35 сокращены до 11.
Следует указать, что в примере, показанном на фиг. 12, и в примерах, показанных на фиг. 13, 14, 15, 16, 17, всегда существует ослабление поддиапазона на 20 дБ по сравнению с другим поддиапазоном.
На фиг. 13 показан случай, аналогичный показанному на фиг. 12, однако при этом синусоидальный тон на 5% выше предела диапазона. Опять же, банк действительных фильтров будет генерировать вторичный пик 125. Однако этот вторичный пик почти полностью ослабляется банком 124 действительных фильтров, включающих в себя коррекцию. Наблюдается лишь очень малое отклонение 127. При уменьшении длины фильтра для фильтров 32 - 35 этот пик 127 будет дополнительно уменьшаться. Даже с ухудшенными фильтрами, т.е. фильтрами, осуществляющими только взвешивание весовым коэффициентом, пик 127 все же будет меньше вторичного пика 125. Однако благодаря взвешиванию фильтрованных значений, согласно изобретению разностью двух весовых коэффициентов, по меньшей мере, в случае одинаковых или почти одинаковых весовых коэффициентов, не будет вноситься почти никакой помехи, несмотря на довольно примитивную фильтрацию, осуществляемую ухудшенными фильтрами.
На фиг. 14, 15, 16 и 17 показаны аналогичные сценарии, в которых, однако, синусоидальный тон значительно больше удален от предела диапазона. Все чертежи отчетливо демонстрируют компонент наложения спектров, который будет генерироваться банком действительных фильтров, в отсутствие коррекции согласно изобретению. Кроме того, все чертежи демонстрируют еще меньшие отклонения 127 между банком действительных фильтров, включающим в себя коррекцию согласно настоящему изобретению и банком 123 комплексных фильтров, устойчивым к наложению спектров.
На фиг. 18 показан случай, аналогичный показанному на фиг. 12-17, однако для преобразование в форме MDCT. Опять же, отчетливый компонент наложения спектров 125 можно распознать или может иметь место на частоте 127.88. Посредством коррекции согласно изобретению, т.е. посредством фильтрации соответствующих коэффициентов MDCT последовательных пиков MDCT фильтрами 32-35, компонент наложения спектров снижается за исключением малого отклонения 127 на фиг. 18. Если для фильтров 32-35 используются длины фильтра 11, весь агрегат будет устойчив только после примерно 10 спектров MDCT. Таким образом, в реализации фиг. 3a и 3b необходима задержка в 5 блоков MDCT, пока не будут сгенерированы чувствительные выходные значения.
В зависимости от обстоятельств способ согласно изобретению можно реализовать аппаратными или программными средствами. Реализация может храниться на носителе цифровой информации, в частности на диске или CD, имеющем сигналы управления, которые могут считываться электронным устройством и взаимодействовать с программируемой компьютерной системой, что позволяет осуществлять соответствующий способ. Таким образом, изобретение в общем также можно реализовать в виде компьютерного программного продукта, имеющего программный код, хранящийся на машинно-считываемом носителе, для осуществления способа согласно изобретению, когда компьютерный программный продукт выполняется на компьютере. Иначе говоря, изобретение можно также реализовать в виде компьютерной программы, имеющей программный код для осуществления способа, когда компьютерная программа выполняется на компьютере.