SiamRN: Aprendiendo a filtrar: Red de relaciones siameses para una estructura de modelo de seguimiento robusta e interpretación de código

Dirección de código de dirección de tesis

1. Preguntas planteadas por el autor


  1. La discriminabilidad de los rastreadores siameses es deficiente a la hora de abordar situaciones complicadas

  2. El objetivo es incapaz de ser resaltado debido a la estrategia de recorte al estilo siamés, que puede introducir un contexto de distracción.
  3. Las ramas de clasificación y regresión generalmente se optimizan de forma independiente [4, 24, 25], lo que
    aumenta la probabilidad de desajuste entre ellas durante el seguimiento.La casilla correspondiente a la posición con la mayor confianza de clasificación no es la más precisa para el
    objetivo t rastreado. categoría Las dos ramas de y la regresión se optimizan de forma independiente, lo que puede provocar discrepancias. El cuadro correspondiente a la posición con el puntaje de clasificación más alto no es necesariamente el más preciso que queremos rastrear.

2. La propuesta del autor


  1. Presentamos Relation Detector (RD) que está entrenado para obtener la capacidad de filtrar los distractores del fondo a través de una estrategia de entrenamiento contrastivo basada en el aprendizaje de pocos disparos.La
    ¿Cómo entender la obra central del autor?
    Use cls y loc generados por Head para actuar sobre el mapa de características xf y la imagen original x para generar un nuevo mapa de características y gt, y luego colóquelo en el Detector de relaciones para entrenar una matriz ponderada (o: ¿filtro?)
  2. Para integrar la información obtenida por RD y la rama de clasificación para refinar los resultados de seguimiento, diseñamos un Módulo de refinamiento
    El autor diseñó un Módulo de refinamiento para complementar la información obtenida del Detector de relaciones y el módulo de clasificación.
    ¿Cómo entender la obra central del autor?
    El resultado de Relation Detector se multiplica directamente por la función utilizada para Classify (es decir, Xcorr), que se pondera

3. El marco utilizado por el autor SiamBAN: Siamese Box Adaptive Network for Visual Tracking

SiamBAN código
SiamBAN papel

tubería modelo

El autor utiliza principalmente la teoría y el marco de código de SiamBAN, y el marco del modelo se muestra en la figura.Estructura del modelo SiamBAN

La parte central de la innovación del modelo.

El autor introduce la etiqueta de elipse, en la pequeña elipse E 2 E_2mi2Los puntos que contiene son puntos muestrales positivos, en la gran elipse E 1 E_1mi1Todos los puntos exteriores son puntos muestrales negativos y la elipse grande E 1 E_1mi1y pequeña elipse E 2 E_2mi2La parte encerrada se ignora.
Ellipse_label

	ori = im_c - size // 2 * stride
	# x是25行[31, 31+8, ..., 223]
	# y是25列[[31], [31+8], ..., [223]]
	# 25映射回255, 每个点stride=8个像素,前面31个像素是空的,后面31个是空的
    x, y = np.meshgrid([ori + stride * dx for dx in np.arange(0, size)],[ori + stride * dy for dy in np.arange(0, size)])
	# dim=[2, 25, 25]的全0矩阵,第一个维度是2,包含了(x, y的值,就是[31, 39, ..., 223]的meshgrid)
	points = np.zeros((2, size, size), dtype=np.float32)
	points[0, :, :], points[1, :, :] = x.astype(np.float32), y.astype(np.float32)
	tcx, tcy, tw, th = corner2center(bbox)
	pos = np.where(np.square(tcx - points[0]) / np.square(tw / 4) + np.square(tcy - points[1]) / np.square(th / 4) < 1)
	neg = np.where(np.square(tcx - points[0]) / np.square(tw / 2) + np.square(tcy - points[1]) / np.square(th / 2) > 1)
	cls[pos] = 1
	cls[neg] = 0

Como se puede ver en el código anterior:

mi 1 = ( pi − gxc ) 2 ( gw 2 ) 2 + ( pj − gyc ) 2 ( gh 2 ) 2 E_1 = \frac{(p_i - g_{x_c})^2}{(\frac{g_{w }}{2})^2} + \frac{(p_j - g_{y_c})^2}{(\frac{g_{h}}{2})^2}mi1=(2gramow)2( pagyogramoXdo)2+(2gramoh)2( pagjgramoydo)2
mi 2 = ( pi − gxc ) 2 ( gw 4 ) 2 + ( pj − gyc ) 2 ( gh 4 ) 2 E_2 = \frac{(p_i - g_{x_c})^2}{(\frac{g_{w }}{4})^2} + \frac{(p_j - g_{y_c})^2}{(\frac{g_{h}}{4})^2}mi2=(4gramow)2( pagyogramoXdo)2+(4gramoh)2( pagjgramoydo)2
mi 1 mi_1mi1El exterior es todo ejemplos negativos; E 2 E_2mi2Dentro están todos los ejemplos positivos; E 1 E_1mi1Suma E 2 E_2mi2El cls de la salida ignorada en el medio
es 25 × 25 25\times 2525×25 matriz, pero no todos0 00 y1 11 constituido solo enE 2 E_2mi2Muestreo 16 puntos en el rango de 1, solo en E 1 E_1mi1Los 48 puntos muestreados externos son 0, todos los demás puntos son -1 (ignorados)
, por lo tanto, cls es 25 × 25 25\times 2525×Una matriz de 25 puntos, que incluye muestras positivas 1 (16), muestras negativas 0 (48), muestras ignoradas -1 (561 = 625 − 16 − 48 561 = 625 - 16 - 48561=625dieciséis48 )

4. Estructura de la red SiamRN

Aquí está la estructura del modelo dada por el autor.
modelo Siamrn

Aquí hay un diagrama de estructura de código más detallado, que también es un diagrama de estructura de red SiamRN Básicamente, esto puede lograr un efecto reproducible
estructura de la red siamRNy extraer la entrada de parámetros del área de ROI:

En SiamRN, use la parte principal de SiamBAN para consultarimg query_{img}pregunta _ _ _soy gplantilla de plantillaloczq y clszqgenerados por t e m pl a t e loc_{zq} y cls_{zq}loc _ _z qy cl s _z q
consultaimg consulta_{img}pregunta _ _ _soy g, y su mapa de características qf qfq fbboxquery bbox_{consulta}bb o xconsulta _ _
plantilla plantillaEl mapa de características de t e m p a t e zfo zf_oz foboxtemplate bbox_{template}bb o xplantilla _ _ _ _ _ _
templateneg template_{neg}plantilla _ _ _ _ _ _n e gEl mapa de funciones nfo nf_onorte fobboxneg bbox_{neg}bb o xn e g

zfo zf_o arribaz fosuma info nf_onorte fozf zf usado con la cabezaz f sumanf nf¿Cuál es la diferencia entre n f (no se usa)

zf zfz f sumanf nfn f se reduce dimensionalmente a 256 por cuello, y el cultivo se convierte en[ [ B , 256 , 7 , 7 ] , [ B , 256 , 7 , 7 ], [ B , 256 , 7 , 7 ] ] [[B, 256 , 7, 7], [B, 256, 7, 7], [B, 256, 7, 7]][[ B ,256 ,7 ,7 ] ,[ segundo ,256 ,7 ,7 ] , [ segundo ,256 ,7 ,7 ]] del tensor
zfo zf_oz fosuma info nf_onorte foDespués de la reducción de la dimensión del cuello a 256, pero sin recorte [ [ B , 256 , 15 , 15 ] , [ B , 256 , 15 , 15 ], [ B , 256 , 15 , 15 ] ] [[B, 256, 15, 15 ], [B, 256, 15, 15], [B, 256, 15, 15]][[ B ,256 ,15 ,15 ] ,[ segundo ,256 ,15 ,15 ] , [ segundo ,256 ,15 ,15 ]] tensor

Supongo que te gusta

Origin blog.csdn.net/Soonki/article/details/130936384
Recomendado
Clasificación