1 / 42

Sensor de velocitat mitjançant visió per computador

Sensor de velocitat mitjançant visió per computador. Alumne: Marc Revenga Esquinas. Tutor: Rafael García Campos. Grup de Visió per Computador i Robòtica. Estructura:. - Introducció. - Mòdul de software “Jerry”. - Mòdul de software “Jerry” (offline). - Mòdul de software “Tom”.

miach
Download Presentation

Sensor de velocitat mitjançant visió per computador

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Sensor de velocitat mitjançant visió per computador Alumne: Marc Revenga Esquinas Tutor: Rafael García Campos Grup de Visió per Computador i Robòtica

  2. Estructura: - Introducció - Mòdul de software “Jerry” - Mòdul de software “Jerry” (offline) - Mòdul de software “Tom” - Resultats experimentals - Conclusions - Treball futur

  3. Antecedents Objectius Entorn de treball Sensor de velocitat mitjançant visió per computador Antecedents: - Aquest projecte s’emmarca en els treballs de robòtica submarina i construcció de fotomosaics. - Disposem d’uns robots amb sensors i una càmera subaquàtica que enfoca el fons marí. - Disposem d’un software capaç de generar a partir d’una seqüència d’imatges un mosaic. Aquest software no pot funcionar en temps real degut al seu elevat cost computacional. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  4. Sensor de velocitat mitjançant visió per computador Objectius: Antecedents - Dotar a l’URIS i en un futur a en GARBI d’una primera implementació d’un sensor de velocitat basat en mosaicking. Objectius Entorn de treball - Llegir les dades d’una càmera connectada a una framegrabber. - Emmagatzemar mosaics. - Adaptar al MosaicEngine per treballar lo més a prop possible a temps real. - Fusionar les homografies que ens podia donar el MosaicEngine amb els diferents sensors disponibles en el robot que podien ser accedits mitjançant una arquitectura de comunicació existent desenvolupada sobre un sistema operatiu QNX. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  5. Sensor de velocitat mitjançant visió per computador Antecedents Entorn de treball: Objectius - Es va treballar amb el robot URIS. Entorn de treball - Es un treball en grup. Això fa que diferents mòduls de software en que s’ha de treballar es desenvolupin en paral·lel. - Han sorgit problemes i s’ha hagut que canviar la idea inicial. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  6. Introducció V4L2 Algorisme de mosaicking Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador - És el mòdul de software encarregat d’implementar el sensor de velocitat fent servir algorismes de mosaicking. - Ens proporciona velocitat en X i en Y de la càmera. - Va equipat amb un visualitzador que ens permetrà veure la bonança dels càlculs. - Crea un fitxer GMML que guarda tota la informació del mosaic. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  7. Sensor de velocitat mitjançant visió per computador Introducció V4L2 Algorisme de mosaicking Mòdul visualitzador Nou standard per a l’obtenció de vídeo en màquines Linux. Mòdul GMML Càlcul de la velocitat Es comença a gestar a finals del 2002. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  8. Detecció de corners Detecció de correspondències Detecció d’outliers Càlcul de l’homografia Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador Introducció - El MosaicEngine Jerry parteix del MosaicEngine. V4L2 Algorisme de mosaicking - En aquest algorisme s’ha pensat en optimitzar els càlculs per a que la construcció d’un mosaic sigui tot lo ràpid que es pugui acumulant el mínim error possible. - Es reutilitza la imatge de referència. - S’ aprofiten càlculs d’iteracions anteriors. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  9. Detecció de corners Detecció de correspondències Detecció d’outliers Càlcul de l’homografia Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador Introducció V4L2 Algorisme de mosaicking - Primera iteració de l’algorisme mosaicking entre la imatge actual i la imatge de referència. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  10. Detecció de corners Detecció de correspondències Detecció d’outliers Càlcul de l’homografia Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador Introducció V4L2 Algorisme de mosaicking - Nova iteració sense canviar la imatge de referència. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  11. Detecció de corners Detecció de correspondències Detecció d’outliers Càlcul de l’homografia Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador Introducció V4L2 Algorisme de mosaicking - Nova iteració sense canviar la imatge de referència. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  12. Detecció de corners Detecció de correspondències Detecció d’outliers Càlcul de l’homografia Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador Introducció V4L2 Algorisme de mosaicking - Nova iteració canviat la imatge de referència per la imatge actual de l’iteració anterior. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  13. Detecció de corners Detecció de correspondències Detecció d’outliers Càlcul de l’homografia Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador Introducció V4L2 Algorisme de mosaicking - Nova iteració canviat la imatge de referència per la imatge actual de l’iteració anterior. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  14. Detecció de corners Detecció de correspondències Detecció d’outliers Càlcul de l’homografia Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador Introducció V4L2 Algorisme de mosaicking - Nova iteració sense canviar la imatge de referència. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  15. Detecció de corners Detecció de correspondències Detecció d’outliers Càlcul de l’homografia Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador Introducció V4L2 Algorisme de mosaicking - Nova iteració sense canviar la imatge de referència. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  16. Detecció de corners Detecció de correspondències Detecció d’outliers Càlcul de l’homografia Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador Introducció V4L2 La comparativa de la deriva acumulada en els algoritmes de mosaicking seria: Algorisme de mosaicking antic (canviant la imatge de referència a cada iteració) nou (aprofitant la imatge de referència) Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  17. Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador Introducció V4L2 Aquesta fase de l’algorisme de mosaicking s’encarrega de: Algorisme de mosaicking Detecció de corners - Buscar els punts a la imatge de referència que siguin fàcilment identificables en imatges successives. Detecció de correspondències Detecció d’outliers - Aquests punts han de ser identificables encara que les condicions d’il·luminació canviïn força sense problemes de redundància o ambigüitat. Càlcul de l’homografia - Aquests punts els anomenem corners. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  18. Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador Introducció V4L2 Algorisme de mosaicking En el nostre cas implementem l’algorisme de Harris. Detecció de corners Detecció de correspondències Detecció d’outliers Càlcul de l’homografia Imatge original Imatge amb els N millors corners dibuixats Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  19. Sensor de velocitat mitjançant visió per computador Introducció V4L2 S’intenta: Algorisme de mosaicking - Reduir el temps de càlcul. Detecció de corners Detecció de correspondències - Aprofitar càlculs ja fets. Detecció d’outliers Càlcul de l’homografia Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  20. Sensor de velocitat mitjançant visió per computador Introducció Els outliers són falsos matchings. Aquests es poden donar per: V4L2 Algorisme de mosaicking - Errors en la detecció de correspondències. Detecció de corners - Hi ha una part de la imatge que no segueix el mateix moviment que la resta de la imatge (un peix que passa per sota la càmera). Detecció de correspondències Detecció d’outliers Càlcul de l’homografia Mòdul visualitzador Mòdul GMML Imatge amb outliers Imatge sense outliers Càlcul de la velocitat Implementat un algorisme d’estadística robusta (Least Median of Squares). Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  21. Sensor de velocitat mitjançant visió per computador Introducció V4L2 Algorisme de mosaicking S’ha de resoldre el sistema d’equacions: Detecció de corners Detecció de correspondències El sistema es resol mitjançant SVD (Singular Value Decomposition). Detecció d’outliers Càlcul de l’homografia Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  22. Detecció de corners Detecció de correspondències Detecció d’outliers Càlcul de l’homografia Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador Introducció V4L2 El mòdul visualitzador és l’encarregat de dibuixar la informació que ens va transmetent l’algorisme de mosaicking. Algorisme de mosaicking Modes de funcionament: - Mosaic: Construeix el mosaic resultant. - Traça: Dibuixa uns quadrats que representen el centre de la imatge. Representa el moviment de la càmera. - Debug: Serveix per debuggar. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  23. Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Sensor de velocitat mitjançant visió per computador Introducció V4L2 Mode “traça” Mode “mosaic” Algorisme de mosaicking Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  24. Sensor de velocitat mitjançant visió per computador Introducció V4L2 El mòdul GMML és l’encarregat de guardar les dades del mosaic resultant. Algorisme de mosaicking Aquest fitxer està creat amb un llenguatge de tags XML. Mòdul visualitzador Mòdul GMML Càlcul de la velocitat Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  25. Sensor de velocitat mitjançant visió per computador Introducció V4L2 Per la implementació feta només necessitem conèixer tres dades : Algorisme de mosaicking Mòdul visualitzador - Saber quants píxels ens hem desplaçat en X i en Y. Aquesta dada ens la proporciona el MosaicEngine Jerry amb l’homografia resultant dels seus càlculs. Mòdul GMML Càlcul de la velocitat - Distància respecte al fons. - Dades que ens proporciona el fabricant de la càmera. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  26. Sensor de velocitat mitjançant visió per computador - Era complicat fer proves amb el robot contínuament. - Va sorgir com a necessitat de provar l’algorisme MosaicEngine Jerry sobre una seqüència d’imatges coneguda de la forma més simple possible. - Està desenvolupat utilitzant la filosofia Galadriel Framework amb la nostra particular implementació anomenada Galadriel Parts. - És multiplataforma. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  27. Sensor de velocitat mitjançant visió per computador - Era complicat fer proves amb el robot contínuament. - Va sorgir com a necessitat de provar l’algorisme MosaicEngine Jerry sobre una seqüència d’imatges coneguda de la forma més simple possible. - Està desenvolupat utilitzant la filosofia Galadriel Framework amb la nostra particular implementació anomenada Galadriel Parts. - És multiplataforma. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  28. Sensor de velocitat mitjançant visió per computador - Permet llegir fitxers gmmls generats pel mòdul de software “Jerry”. - Pot implementar algorismes amb un alt cost computacional. - Ens proporciona molta flexibilitat per incorporar nous algorismes. - Està desenvolupat utilitzant la filosofia Galadriel Framework amb la nostra particular implementació anomenada Galadriel Parts. - És multiplataforma. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  29. Sensor de velocitat mitjançant visió per computador - Permet llegir fitxers gmmls generats pel mòdul de software “Jerry”. - Pot implementar algorismes amb un alt cost computacional. - Ens proporciona molta flexibilitat per incorporar nous algorismes. - Està desenvolupat utilitzant la filosofia Galadriel Framework amb la nostra particular implementació anomenada Galadriel Parts. - És multiplataforma. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  30. Sensor de velocitat mitjançant visió per computador Optimització de codi. Temps aproximats. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  31. Sensor de velocitat mitjançant visió per computador Reducció de la deriva acumulada. Model similarity (377 imatges). Aprofitant la imatge de referència (mètode nou). Canviant la imatge de referència a cada iteració (mètode antic). Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  32. Sensor de velocitat mitjançant visió per computador Derives acumulades a les rotacions Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  33. Sensor de velocitat mitjançant visió per computador Dades aproximades del temps de càlcul del sensor de velocitat. Càlculs generats a partir d’un Pentium IV a 2,6 GHz. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  34. Sensor de velocitat mitjançant visió per computador S’ha de millorar el comportament de l’algorisme de mosaicking amb imatges rotades. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  35. Sensor de velocitat mitjançant visió per computador Model euclidià vs similarity. euclidià similarity Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  36. Sensor de velocitat mitjançant visió per computador Encara no tenim un sistema que processi 25 imatges/segon. Falta optimitzar els càlculs de l’algorisme. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  37. Sensor de velocitat mitjançant visió per computador Crear un mòdul de comunicació amb els robots. Fusionar les dades dels diferents sensors amb l’algorisme de mosaicking. - Reduirem deriva. - Reduïm el temps de càlcul. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  38. Sensor de velocitat mitjançant visió per computador Canvi dels algorismes de l’algorisme de mosaicking. - Detecció de corners. - Detecció de correspondències. etc. Canvi en l’implementació dels algorismes. Rotar la imatge de referència per corregir els problemes que tenim en zones amb alta rotació. Mòdul de software “Jerry” Mòdul de software “Tom” Resultats experimentals Treball futur Mòdul de software “Jerry” (offline) Introducció Conclusions

  39. Sensor de velocitat mitjançant visió per computador Fi de la presentació.

  40. Aplicació Aplicació Aplicació Buffer 0 Buffer 1 ... Buffer 0 Buffer 1 ... Buffer 0 Buffer 1 ... Driver Driver Sensor de velocitat mitjançant visió per computador El mètode d’obtenció de frames utilitzat és “Streaming I/O (memory mapping)”. - L’aplicació crea uns buffers a memòria. - Compartició de buffers de memòria entre el programa i el driver. - El driver emplena els buffers un a un amb un frame. - L’aplicació va llegint els buffers i els marca com a buits.

  41. Sensor de velocitat mitjançant visió per computador Exemple simple del funcionament de l’algorisme: Punts reals respecte els punts ideals

  42. Sensor de velocitat mitjançant visió per computador Partim de les dades que ens proporciona el fabricant de la càmera: En el nostre cas el fabricant ens facilita l’angle en X de la càmera.

More Related