Ayuda
Ir al contenido

Dialnet


Detección de puntos claves mediante SIFT paralelizado en GPU

  • Autores: Diego Aracena Pizarro, Nicolás Daneri Alvarado
  • Localización: Ingeniare: Revista Chilena de Ingeniería, ISSN-e 0718-3305, ISSN 0718-3291, Vol. 21, Nº. 3, 2013, págs. 438-447
  • Idioma: español
  • Enlaces
  • Resumen
    • español

      Este trabajo presenta una optimización del método de detección de puntos SIFT (Scale Invariant Feature Transform), mediante su paralelización empleando una GPU (Unidad de Procesamiento Gráfico), aprovechando los múltiples núcleos de esta para dividir los procesos utilizando las API CUDA (Arquitectura Unificada de Dispositivos de Cómputo). El objetivo es acelerar el tiempo de cómputo, que es una variable crítica para todo el proceso de detección de puntos característicos. La estrategia utilizada se basa en dos premisas: el balance carga y la distribución de cálculo. Cada hilo realizará las operaciones necesarias para el cálculo de SIFT y así obtener los descriptores necesarios de acuerdo con un umbral apropiado. Dentro de SIFT se trabajó paralelizando el proceso de asignación de orientación, una de las etapas de SIFT consiste en la acumulación de todas las orientaciones en torno a una región de un punto clave, asignándose a cada pixel en la ventana un subproceso, centrada en la ubicación de un punto clave.

      Las pruebas se realizaron con un notebook con procesador Core 2 Duo 2.2Ghz, 3GB de RAM y una VGA GeForce 8600GT (32 núcleos) de 512MB. De los resultados obtenidos se observa que se logra un rendimiento en cuanto a velocidad del orden de 42,5 milisegundos en promedio, considerando todas las pruebas realizadas y todas las resoluciones trabajadas (320x240, 480x360, 640x480, 800x600, 1024x768, 1280x960), donde la paralelización de SIFT no muestra pérdidas significativas de puntos claves en comparación con la versión secuencial.

    • English

      This paper presents an optimization method for detecting SIFT points (Scale-invariant feature transform), by using a GPU parallelization, taking advantage of multiple cores of it, to divide the processes using the API�s CUDA. The goal is to accelerate the computation time, which is a critical variable for the entire process of key-point�s detection. The strategy used is based on two assumptions, the load balance and distribution of calculation. Each thread will perform the operations required for calculating SIFT and obtain the necessary descriptors according to an appropriate threshold. Parallelizing the process of assignment of orientation, which consists of the accumulation of all the orientations concerning a region of a key-point, assigned to each pixel in the window a thread, centered on the location of a key point, was worked inside SIFT.

      The tests were performed with a Notebook with Core 2 Duo 2.2GHz, 3GB of RAM and a GeForce 8600GT VGA (32 Cores) 512MB. The results obtained show that performance is achieved in terms of speed of the order 42.5 millisecond on average, considering all tests and all resolutions worked (320x240, 480x360, 640x480, 800x600, 1024x768, 1280x960), where the parallelization of SIFT, shows no significant loss of key points, compared to the sequential version.


Fundación Dialnet

Dialnet Plus

  • Más información sobre Dialnet Plus

Opciones de compartir

Opciones de entorno