Resumen
Este artículo presenta un método de optimización para la detección de puntos SIFT (transformación de características invariante a escala) mediante paralelización de GPU, aprovechando sus múltiples núcleos, para dividir los procesos mediante la API CUDA. El objetivo es acelerar el tiempo de cálculo, una variable crítica para todo el proceso de detección de puntos clave. La estrategia se basa en dos supuestos: equilibrio de carga y distribución del cálculo. Cada hilo realizará las operaciones necesarias para calcular SIFT y obtendrá los descriptores necesarios según un umbral adecuado. Paralelizando el proceso de asignación de orientación, que consiste en la acumulación de todas las orientaciones relativas a una región de un punto clave, se asignó a cada píxel de la ventana un hilo centrado en la ubicación de dicho punto clave. Las pruebas se realizaron en un portátil con Core 2 Duo a 2,2 GHz, 3 GB de RAM y una tarjeta gráfica GeForce 8600GT VGA (32 núcleos) de 512 MB. Los resultados obtenidos muestran que se consigue un rendimiento en términos de velocidad del orden de 42,5 milisegundos en promedio, considerando todas las pruebas y todas las resoluciones trabajadas (320×240, 480×360, 640×480, 800×600, 1024×768, 1280×960), donde la paralelización de SIFT, no muestra pérdida significativa de puntos clave, en comparación con la versión secuencial.
| Título traducido de la contribución | Detección de puntos claves mediante SIFT paralelizado en GPU |
|---|---|
| Idioma original | Inglés |
| Páginas (desde-hasta) | 438-447 |
| Número de páginas | 10 |
| Publicación | Ingeniare |
| Volumen | 21 |
| N.º | 3 |
| DOI | |
| Estado | Publicada - 2013 |
Palabras clave
- CUDA
- GPU
- Puntos clave
- Paralelismo
- SIFT