Tengo un vector n-dimensional (1xn conjunto de datos, y no son datos de imagen), y quiero aplicarle un filtro Gaussiano. Tengo el Toolkit de procesamiento de imágenes y algunos otros (pregunte si necesita una lista).Filtro Gaussiano en un vector en Matlab
Presumiblemente puedo hacer que el parámetro hsize
de la función fspecial
sea algo así como [1 n]
. ¿Puedo seguir usando imfilter
para aplicarlo a mi vector como paso siguiente, o debería estar usando algo más?
He visto bastantes ejemplos sobre cómo aplicar un filtro Gaussiano a datos de imagen bidimensionales en Matlab, pero todavía soy relativamente nuevo en Matlab como plataforma, así que un ejemplo sería realmente bueno.
Nota: Actualmente no estoy en posición de probarlo y ver qué sucede (actualmente no está en una máquina con Matlab instalado), de lo contrario lo habría intentado primero y solo me habría preguntado si tuve problemas al usar fspecial
y imfilter
.
Bueno, yo realmente no veo la necesidad de escribir mi propia función si otra las funciones existentes también harán el trabajo, pero sí, la creación del filtro soluciona el problema. Gracias. Por cierto, ¿estoy en lo correcto al creer que comúnmente el tamaño es 6 (más-menos 3) veces el valor sigma? –
Realmente depende de la aplicación, pero generalmente quieres que las colas gaussianas desaparezcan, por lo que truncar el filtro no tiene un efecto significativo (ya que las colas van a 0 en + -infinito, debes truncar para tener una longitud finita filtrar). Entonces sí, ir 4 o más sigmas a cada lado lo garantiza. –
Por supuesto, existe la necesidad de escribir su propia función, ¡especialmente cuando es parte de una costosa caja de herramientas! ¿Qué ocurre si el número de licencias de Matlab Image Toolbox es limitado en su empresa o universidad? ¡Sucede! – Wok