Convolución de múltiples señales 1D en una matriz 2D con múltiples núcleos 1D en una matriz 2D

Tengo un aleatorio definidoH matriz de tamaño600 x 10. Cada elemento en esta matrizH puede ser representado comoH(k,t). Obtuve un espectrograma de vozS cual es600 x 597. Lo obtuve usando las funciones de Mel, por lo que debería ser40 x 611 pero luego utilicé un concepto de apilamiento de cuadros en el que apilé 15 cuadros juntos. Por eso me dio(40x15) x (611-15+1) cual es600 x 597.

Ahora quiero obtener una matriz de salidaY que viene dada por la ecuación basada en convoluciónY(k,t) = ∑ H(k,τ)S(k,t-τ). La suma va deτ=0 aτ=Lh-1. Lh en este caso sería 597.

No se como obtenerY. Además, mi duda es la indexación en ambosH yS al calcular la convolución. Especificamente paraY(1,1), tenemos:

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) + ...

Ahora, no hay índices negativos en MATLAB, por ejemplo,S(1,-1) S(1,-2) y así. Entonces, ¿qué tipo de convolución debo usar para obtenerY? Traté de usarconv2 offtfilt pero creo que eso no me daráY porqueY también debe ser del tamaño deS.

Respuestas a la pregunta(1)

Su respuesta a la pregunta