MATLAB es un software utilizado para la simulación de ingeniería , procesamiento de señales , operaciones matemáticas y de análisis de datos. Convolución es una operación matemática que mezcla dos funciones juntas . MATLAB proporciona métodos para la convolución de dos señales de tiempo en el tiempo o dominio de la frecuencia . Puede utilizar las funciones integradas de convolucionar señales horarias en Maßstab o escribir su propio código para ayudar a entender la operación de convolución . Convolución
La operación de convolución se define como la integral , o suma en los casos discretos , sobre el rango de la función de f (t ) * g ( tT ) con respecto a T. Mientras que se mueve sobre la rango de una función f , cada punto se multiplica por una segunda función g . En el dominio del tiempo , convolución es una operación intensiva de cómputo ; . Sin embargo , después de la transformación en el dominio de la frecuencia utilizando una transformada de Fourier , convolución se simplifica a multiplicaciones
función incorporada
el " conv ( ) ", o la variante de dos dimensiones " CONV2 ( ) , " funciones se puede utilizar para convolucionar fácil y eficiente a las señales en MATLAB . Normalmente se asume que las señales están en el tiempo o en el espacio - dominio , en comparación con el dominio de la frecuencia . Los dos primeros argumentos son las dos señales que se convolucionadas , o una señal y un filtro . El tercer argumento es un argumento de la forma que define el tamaño de la salida . Las opciones válidas son "full ", " igual" o " válida "
mixed_signal = conv ( signal1 , SEÑAL2 , "mismo" ),. New_image = CONV2 ( imagen1 , imagen2 , ' completo ');
Time- Domain
Aunque funciona convolución en el dominio del tiempo , puede ser útil para entender cómo funciona la operación de convolución < . br>
% Para dos señales 1 - D, F y gmy_length = longitud ( f ) + longitud ( g ) - 1 , resultado = zeros ( my_length , 1 ) ;
para i = 1 : my_lengthfor j = 1 : longitud ( f ) si ( ( i - j 1 ) > 0 && ( i - j 1 ) < longitud ( g ) ) resultado ( i ) = f ( j ) * g ( i- j +1); endendend
dominio de la frecuencia
señales de dominio de tiempo se pueden transformar en el dominio de la frecuencia utilizando la transformada de Fourier . MATLAB implementa una transformada rápida de Fourier de la función " ) FFT ( " . En el dominio de la frecuencia , dos señales se pueden mezclar utilizando la multiplicación de punto a gota mediante el operador
% Para dos señales , F y GF = fft ( f ) " * ". ; . G = FFT ( g ), U = F * G , . u = ifftshift ( IFFT ( U)) ;