El operador Prewitt se utiliza para detectar los bordes de una imagen. Detecta dos tipos de bordes
Los bordes se calculan utilizando la diferencia entre las respectivas intensidades de pÃxeles de la imagen. Todas las máscaras que se utilizan para la detección de bordes también se conocen como máscaras derivadas. Dado que, como hemos dicho muchas veces en esta serie de tutoriales, la imagen también es una señal, los cambios en la señal solo se pueden calcular mediante diferenciación. Por eso, estos operadores también se denominan operadores derivados o máscaras derivadas.
Todas las máscaras derivadas deben tener las siguientes propiedades:
El operador Prewitt nos proporciona dos máscaras, una para la detección de bordes en dirección horizontal y la otra para la detección de bordes en dirección vertical.
-uno | 0 | uno |
-uno | 0 | uno |
-uno | 0 | uno |
La máscara anterior encontrará bordes en la dirección vertical, y eso es porque la columna de ceros está en la dirección vertical. Cuando colapsas esta máscara en una imagen, te dará los bordes verticales de la imagen.
Cuando aplicamos esta máscara a la imagen, los bordes verticales se destacan en ella. Simplemente funciona como una derivada de primer orden y calcula la diferencia de brillo de los pÃxeles en el área del borde. Dado que la columna central es cero, no incluye los valores de la imagen original, sino que calcula la diferencia en los valores de pÃxel derecho e izquierdo a lo largo de ese borde. Esto aumenta la intensidad de los bordes y se vuelve más nÃtido que la imagen original.
-uno | -uno | -uno |
0 | 0 | 0 |
uno | uno | uno |
Arriba, la máscara encontrará los bordes en la dirección horizontal porque la columna con ceros está en la dirección horizontal. Cuando colapsas esta máscara sobre la imagen, los bordes horizontales serán visibles en ella.
Esta máscara resalta los bordes horizontales de la imagen. También funciona según el principio de la máscara antes mencionada y calcula la diferencia entre las intensidades de pÃxeles de un borde en particular. Dado que la fila central de la máscara consta de ceros, no incluye los valores de los bordes originales de la imagen, sino que calcula la diferencia entre las intensidades por encima y por debajo de los pÃxeles de un borde en particular. De esta forma, aumenta el cambio brusco de brillo y los bordes se vuelven más visibles. Ambas máscaras anteriores siguen el principio de máscara derivada. Ambas máscaras tienen signos opuestos y la suma de ambas máscaras es cero. La tercera condición no se aplicará en esta declaración, ya que las dos máscaras anteriores están estandarizadas y no podemos cambiar el valor en ellas.
Es hora de ver estas máscaras en acción:
A continuación se muestra una imagen de muestra a la que aplicaremos las dos máscaras anteriores a su vez.
Después de aplicar una máscara vertical a la imagen de muestra anterior, se obtendrá la siguiente imagen. Esta imagen contiene bordes verticales. Es más correcto juzgar esto comparándolo con una imagen con bordes horizontales.
Después de aplicar una máscara horizontal a la imagen de muestra anterior, se obtendrá la siguiente imagen.
Como puede ver, en la primera imagen a la que aplicamos la máscara vertical, todos los bordes verticales son más visibles que en la imagen original. Del mismo modo, en la segunda imagen, aplicamos una máscara horizontal y, como resultado, todos los bordes horizontales son visibles. Entonces puede ver que podemos definir los bordes horizontales y verticales de la imagen.
🚫