2010-08-15 18 views
5

¿Quería saber si hay alguna forma de detectar la posición de un objeto en una imagen utilizando algún lenguaje de programación?Programación de procesamiento de imágenes

Por ejemplo: si tengo una imagen de una pelota que se está actualizando, digamos cada 100 milisegundos, ¿es posible obtener la coordenada de la pelota a través de algún programa, usando algo?

Respuesta

7

Echa un vistazo a OpenCV y Hough Transform.

+1

Juro que AMD/ATi publicó una vez una detección de objetos en tiempo real con una implementación de la transformada Hough en la GPU, pero ya no puedo buscar en Google :( –

-3

Si es su propio programa, es posible. Si es de otra persona (tercera parte), aún es posible (pero puede ser más difícil).

En realidad, este problema puede tener más que ver con el entorno de la plataforma (por ejemplo, niveles de protección en los procesos), etc. en lugar del idioma.

+0

hmm, supongamos que tengo una cámara web, ¿es posible programarla? para leer las coordenadas de un objeto específico? usando algún lenguaje de programación? – Anant

+0

Si su programa captura los marcos de imagen y crea/almacena las imágenes como objetos, entonces podría ser posible si el objeto de imagen es accesible (por ejemplo, no privado). Sin embargo, si esta tarea debe realizarse desde un proceso separado, entonces podría ser más difícil y se requerirían algoritmos de imágenes específicos para detectar objetos en la imagen (y por lo tanto su posición). Esto podría hacerse en cualquier lenguaje de programación , suponiendo que no haya otras restricciones. – Chubsdad

+0

gracias por la respuesta! cualquier tutorial específico o guía de páginas web que usted sepa puede ayudarme a hacer esto? – Anant

0

Depende de la complejidad de la escena. Si la imagen contiene una bola roja, delante de una escena que no contiene otros objetos rojos es fácil:

Selecciona píxeles con valores altos en el canal rojo, elimina píxeles sueltos individuales (por ejemplo, con "apertura"), y calcula el centro de gravedad de los píxeles restantes.

Si la escena es solo un poco más compleja, el algoritmo necesario debe ser mucho más complejo y debe comenzar a leer documentos científicos, como los mencionados por el TC. La ya mencionada Hough Transform es un algoritmo relativamente simple que puede reconocer formas parcialmente oscurecidas. Por lo tanto, si quiere salirse con un algoritmo simple, configure la escena cuidadosamente y use buena iluminación con lámparas múltiples.

Para las bibliotecas que realizan las operaciones básicas de análisis de imágenes, OpenCV y Camellia, que ya se mencionaron, son los tipos de bibliotecas que necesita. Para algoritmos simples y cuando no necesita tiempo real, también puede probar el image analysis module desde Scipy.

+0

Alguien también debería recomendar un buen libro introductorio.No sé ninguno. – Eike

Cuestiones relacionadas