[Girar] explorar operador encontrar

 

Operador de búsqueda de plantillas basadas en formas:

find_shape_model (Imagen:: ModelID, AngleStart, AngleExtent, MinScore, NumMatches, MaxOverlap, SubPixel , NumLevels, Greediness: Row, Column, Angle, Score)

 

MaxOverlap: significa el área de superposición máxima permitida.

 

Entonces queremos preguntar, ¿a qué región se refiere esta región superpuesta?

Si la siguiente imagen es una imagen de crear un modelo de forma:

Entonces, para la imagen a continuación, ¿se superponen las dos formas?

 

Según la comprensión general, está claro que no hay superposición, solo una se inserta en el espacio de la otra, pero las dos formas parecen no tener una superposición sustancial.

 

Después de ver alguna información, se dice que la superposición aquí se refiere a la parte superpuesta del rectángulo circunscrito más pequeño de cada forma . Ese es el bloque de color rojo en la figura a continuación:

Si este es el caso, déjame verificar:

1 * modelo . 01.png la figura 1 es el primer artículo, 02.png figura 2 es un segundo artículo. 2 read_image (Image_mode, ' C: / las usuarios / Happy xia / Desktop / 01.png ' ) . 3 create_shape_model (Image_mode, ' auto ' , -3.0 , 6.79 , ' auto ' , ' auto ' , ' use_polarity ' , ' auto ' , ' auto ' , ModelID2) 4  5 * Verificación 6 read_image (Image, 'C: / Users / happy xia / Desktop / 02.png ' ) 7 dev_set_draw ( ' margin ' ) 8 binary_threshold (Image, Region, ' max_separability ' , ' dark ' , UsedThreshold) 9  connection (Region, ConnectedRegions) 10  smallest_rectangle2  (ConnectedRegions , Fila, Columna, Phi, Longitud1, Longitud2) 11  gen_rectangle2 (Rectángulo, Fila, Columna, Phi, Longitud1, Longitud2) 12 select_obj (Rectangle, ObjectSelected, 1 ) 13 select_obj (Rectangle, ObjectSelected1, 2 )14  area_center (ObjectSelected1, Area1, Row11, Column11) 15  16  intersección (ObjectSelected, ObjectSelected1, RegionIntersection) 17  area_center (RegionIntersection, Area, Row1, Column1) 18  19 * (Area1 + 0.1 ) es dejar que el cociente sea un decimal, de lo contrario la proporción Sería igual a 0 20  ratio: = Área / (Área1 + 0.1) 21 disp_message ( 3600 , ratio, ' imagen ' , 160 , 205 , ' rojo ' , ' verdadero ' ) 22  23  dev_display (Imagen) 24  25* Nota: El sexto parámetro, NumMatchs = 0 , significa que no hay límite para el número de coincidencias. Múltiple 26 find_shape_model (Imagen, ModelID2, -3.0 , 6.79 , 0.5 , 0 , ratio + 0.01 , ' mínimos_cuadrados ' , 0 , 0.9 , Row2, Column2, Angle2, Score2 ) 27  28 * get_shape_model_contours (ModelContours, ModelID2, 1 ) 29 * vector_angle_to_rigid ( 0 , 0 , 0 , Row2 [ 0 ], Column2 [ 0 ], Angle2 [ 0] HomMat2D0) 30 * affine_trans_contour_xld (ModelContours, ContoursAffinTrans0, HomMat2D0) 31  32 * vector_angle_to_rigid ( 0 , 0 , 0 , Row2 [ 1 ], COLUMN2 [ 1 ], angle2 [ 1 ], HomMat2D1) 33 * affine_trans_contour_xld (ModelContours, ContoursAffinTrans1, HomMat2D1)

Aquí, la relación de área de la porción superpuesta y el rectángulo circunscrito más pequeño de una sola forma es 0.426317.

Cuando el parámetro MaxOverlap en find_shape_model toma la relación de valor + 0.01 (o relación) , Score2 = [0.999136, 0.998544] .

Cuando el parámetro MaxOverlap en find_shape_model toma la relación de valor -0.01 , Score2 = 0.999136 , es decir, solo se encuentra uno.

 

Se puede explicar a partir de esto: la relación (el valor es 0.426317) es de hecho el valor de corte de la relación de superposición máxima permitida en este ejemplo , y se puede determinar que MaxOverlap en find_shape_model se refiere a la superposición del rectángulo circunscrito más pequeño de cada forma. La proporción del rectángulo .

 



Supongo que te gusta

Origin www.cnblogs.com/dinghw/p/12678148.html
Recomendado
Clasificación