Main Content

ordfilt2

Filtrado de estadísticas de ósxos 2-D

Descripción

ejemplo

B = ordfilt2(A,order,domain) reemplaza cada elemento del elemento th del conjunto ordenado de vecinos especificado por los elementos distintos de cero en .Unorderdomain

B = ordfilt2(A,order,domain,S) filtros , donde se utilizan los valores correspondientes a los valores distintos de cero de como desplazamientos aditivos.Unordfilt2Sdomain Puede utilizar esta sintaxis para implementar operaciones morfológicas en escala de grises, incluida la dilatación y la erosión en escala de grises.

B = ordfilt2(___,padopt) filtros , donde especifica cómo rellena los límites de la matriz.Unpadoptordfilt2

Ejemplos

contraer todo

Lea la imagen en el espacio de trabajo y muéstrala.

A = imread('snowflakes.png'); figure imshow(A)

Filtre la imagen y muestre el resultado.

B = ordfilt2(A,25,true(5)); figure imshow(B)

Argumentos de entrada

contraer todo

Matriz de entrada, especificada como una matriz 2D, real, no dispersa, numérica o lógica.

Ejemplo: A = imread('snowflakes.png');

Tipos de datos: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical

Elemento para reemplazar el píxel de destino, especificado como un entero escalar real.

Ejemplo: B = ordfilt2(A,25,true(5));

Tipos de datos: double

Vecindario, especificado como una matriz numérica o lógica, que contiene 1s y 0s. es equivalente al elemento de estructuración utilizado para las operaciones de imagen binaria.domain Los elementos de 1 valor definen la vecindad para la operación de filtrado. En la tabla siguiente se proporcionan ejemplos de algunos filtros comunes.

Tipo de operación de filtradoCódigo MATLABBarrioDatos de imagen de ejemplo, que indican el elemento seleccionado
Filtro medianoB = ordfilt2(A,5,ones(3,3))
Filtro mínimoB = ordfilt2(A,1,ones(3,3))
Filtro máximoB = ordfilt2(A,9,ones(3,3))
Mínimo de vecinos del norte, este, sur y oesteB = ordfilt2(A,1,[0 1 0; 1 0 1; 0 1 0])

Ejemplo: B = ordfilt2(A,25,true(5));

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

Desplazamientos aditivos, especificados como una matriz del mismo tamaño que .domain

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

Opción de relleno, especificada como cualquiera de los siguientes valores:

OpciónDescripción
'zeros'Límites de la matriz pad con 's.0
'symmetric'

Matriz pad con reflejos espejo de sí mismo.

Tipos de datos: char | string

Argumentos de salida

contraer todo

Imagen de salida, devuelta como una matriz 2D de la misma clase que la imagen de entrada.Un

Sugerencias

  • Cuando se trabaja con matrices de dominio grandes que no contienen ningún elemento de valor cero, puede lograr un mayor rendimiento si está en un formato de datos enteros ( , , , ).ordfilt2Unuint8int8uint16int16 La ganancia de velocidad es mayor para y que para los tipos de datos de 16 bits.uint8int8 Para los formatos de datos de 8 bits, la matriz de dominio debe contener siete o más filas. Para los formatos de datos de 16 bits, la matriz de dominio debe contener tres o más filas y 520 o más elementos.

Referencias

[1] Haralick, Robert M., and Linda G. Shapiro, Computer and Robot Vision, Volume I, Addison-Wesley, 1992.

[2] Huang, T.S., G.J.Yang, and G.Y.Tang. "A fast two-dimensional median filtering algorithm.", IEEE transactions on Acoustics, Speech and Signal Processing, Vol ASSP 27, No. 1, February 1979

Capacidades ampliadas

Consulte también

Introducido antes de R2006a