Свертка нескольких одномерных сигналов в двумерной матрице с несколькими одномерными ядрами в двумерной матрице

У меня случайно определеноH матрица размера600 x 10, Каждый элемент в этой матрицеH может быть представлен какH(k,t), Я получил речевую спектрограммуS который600 x 597, Я получил его с помощью функций Мел, так что должно быть40 x 611 но затем я использовал концепцию укладки кадров, в которой я сложил 15 кадров вместе. Поэтому это дало мне(40x15) x (611-15+1) который600 x 597.

Теперь я хочу получить выходную матрицуY который задается уравнением на основе сверткиY(k,t) = ∑ H(k,τ)S(k,t-τ), Сумма идет отτ=0 вτ=Lh-1. Lh в этом случае будет 597.

Я не знаю как получитьY, Кроме того, мое сомнение заключается в индексации в обоихH а такжеS при вычислении свертки. В частности, дляY(1,1), у нас есть:

Y(1,1) = H(1,0)S(1,1) + H(1,1)S(1,0) + H(1,2)S(1,-1) + H(1,3)S(1,-2) + ...

Теперь в MATLAB нет такой вещи, как отрицательные индексы - например,S(1,-1) S(1,-2) и так далее. Итак, какой тип свертки я должен использовать, чтобы получитьY? Я пытался с помощьюconv2 или жеfftfilt но думаю что не даст мнеY так какY также должен быть размеромS.

Ответы на вопрос(1)

Ваш ответ на вопрос