¿Cuáles son las diferencias operativas específicas entre imfilter y conv2 en matlab? ¿Qué significan las operaciones relevantes de imfilter?
imfilter implementa filtrado espacial lineal;
conv2 calcula la convolución bidimensional de dos matrices
1. MATLAB proporciona operaciones de convolución Comando de función conv2, su formato de sintaxis. es:
C = conv2(A,B)
C = conv2(A,B) devuelve la convolución bidimensional C de las matrices A y B. Si A es una matriz de ma×na y B es una matriz de mb×nb, entonces el tamaño de C es (ma+mb+1)×(na+nb+1).
2. La caja de herramientas de procesamiento de imágenes de MATLAB proporciona la función de filtrado de imágenes basada en convolución filter2. El formato de sintaxis de filter2 es:
Y = filter2(h,X)
.Donde Y = filter2(h,X) devuelve el resultado de la imagen X filtrada por el operador h. De forma predeterminada, la imagen devuelta Y tiene el mismo tamaño que la imagen de entrada X. Por ejemplo:
De hecho, filter2 y conv2 son equivalentes. Cuando MATLAB calcula filter2, primero gira el núcleo de convolución 180 grados y luego llama a la función conv2 para el cálculo.
La función Fspecial se utiliza para crear operadores de filtro predefinidos. Su formato de sintaxis es:
h = fspecial(tipo)
h = fspecial(tipo, parámetros). )
El tipo de parámetro especifica el tipo de operador y los parámetros especifican los parámetros correspondientes. El formato específico es:
tipo='average', que es el filtro medio y el parámetro. es n, que representa el tamaño de la plantilla, expresado como un vector, el valor predeterminado es.
tipo = 'gaussiano', que es un filtro de paso bajo gaussiano con dos parámetros, n representa el tamaño de la plantilla, el valor predeterminado es, sigma representa la desviación estándar del filtro, la unidad es píxeles, el valor predeterminado es 0,5