1. Los principales contenidos
- algoritmo de Canny introdujo
- cv API :: Canny ()
la diferencia entre el clon y CopyTo, ver el enlace, nota figura CopyTo máscara de
imagen invertida
algoritmo 2.Canny introdujo
- algoritmo de detección de bordes de Canny se propone en 1986
- Es un detector de borde buena
- Es un común y método de procesamiento de imagen muy útil
que el algoritmo de etapas de:
高斯模糊——GaussianBlur() //降噪声
灰度转换——cvtColor
计算梯度——sobel/Schar
非最大信号抑制
高低阈值输出二值图像
-
señal de inhibición no máximo
cuando la señal es muy fuerte ventaja, el sistema se considera una ventaja grande, pero sólo uno de los bordes, esta vez vamos a ser una supresión de píxeles no borde. ---- se elimina la inhibición de la señal máxima en esta dirección, no el valor máximo, poner su valor,
después de que el operador de Sobel, obtenemos una Gx y Gy, su calculada, se obtiene un ángulo, por este ángulo se obtiene un gradiente de tendencia, por ejemplo, se obtiene una variación mayor en la dirección + eje x, entonces encontramos + y dirección (vertical), ahora la izquierda, el valor intermedio derecho en comparación con ella, si la relación que es un valor pequeño, entonces la izquierda y la derecha se eliminan, la retención intermedia.
-
Alta y baja de salida umbral imagen binaria
interpretación : En este punto de la imagen debido a la supresión de la señal no máxima antes, ahora tenemos los bordes de la imagen son más prominentes, pero por alguna razón alguna del borde aún no puede conectarse, entonces tenemos que ser de esta manera la conexión de los bordes.
Las operaciones específicas : T1, T2 al valor de umbral, por lo general mayor que T2 están retenidas, que es inferior a T1 desecha, del pixel es mayor que T2, T1 y mayor que todos interconectados, se conservan, se obtiene finalmente una imagen binaria.
Recomendado alta y baja relación de umbral T2: T1 = 3: 1/2: 1 , que es el umbral alto T2, T1 es el bajo umbral
3.API detallada
(Función Canny nos ayuda un paquete bueno de los cinco pasos siguientes, desenfoque gaussiano, de conversión de escala de grises, operador de Sobel, de señal no supresión máxima, el nivel de salida máximo del valor umbral)
Canny(
InputArray src, //8-bit的输入图像
OutputArray edges, //输出边缘图像,一般都是二值图像,背景是黑色
double threshold1, //低阈值,常取高阈值的1/2或者1/3
double threshold2, //高阈值
int aptertureSize, //Sobel算子,常取3x3,取值3
bool L2gradient //选择true表示是L2来归一化,默认用L1(false)归一化
)
4.image.copyTo (imagen2) función suplementaria explicación
Esta función tiene dos definiciones copyTo maneras, a saber,
void copyTo (OutputArray m) const;
y
void copyTo(OutputArray m ,InputArray mask) const;
Es decir, el parámetro puede ser una imagen de salida o una imagen de salida y un mapa de máscara
entonces
image.copyTo (imageROI);
es decir, la imagen de esta copia de la imagen (Copia a) a imageROI
image.copyTo (imageROI, máscara) ;
a continuación, esto no es sólo la imagen de copia figura (copia a) a la mageROI, y los píxeles de imagen correspondientes a enmascarar píxeles con valor 0 no se fija a la imageROI.
extensiones adicionales:
OpenCV3 de --copyTo () función utilizando el método de
análisis de detección de bordes de Canny