Stéphane Vujasinovic apporte son témoignage sur ses travaux de fin d’études réalisés en vision et intelligence artificielle (IA). Stéphane a reçu en juin 2018 son diplôme d’ingénieur INSA mécatronique avec double diplôme avec la Hochschule de Karlsruhe.
Étudiant en mécatronique à l’INSA de Strasbourg en double diplôme avec la Hochschule de Karlsruhe, j’ai effectué mon stage au sein du Fraunhofer Institute of Optronics, System Technologies and Image Exploitation IOSB à Karslruhe, et plus particulièrement au sein de l’équipe IAS (Interoperabilität und Assistenzsysteme) où j’ai pu développer mes connaissances dans le domaine du Machine Learning.
Problématique : Être capable de détecter des objets spécifiques dans les images aériennes
Pour répondre au problème, l’institut souhaitait développer une solution se basant sur une intelligence artificielle. Pour ce faire, les réseaux de neurones à convolution (une architecture adaptée pour traiter des images) sont les candidats idéaux, présentant de meilleures performances dans le domaine de la détection d’objet comparés aux programmes de détection traditionnelle. Cependant la plupart des réseaux de neurones à convolution sont entrainés sur des images classiques (images prises avec une perspective humaine comme présenté Figure 1) et avec des classes plus ou moins intéressantes pour notre cahier des charges.
Mon travail au sein de l’équipe a été de faire l’état de l’art, sur les réseaux de neurones disponibles, en se basant sur la compétition internationale ILSVRC [2] qui a lieu tous les ans pour comparer les performances de nouveaux programmes, dont des réseaux de neurones à convolution dans le domaine de la vision par ordinateur. J’en ai sélectionné un certain nombre, que j’ai testé sans les entraîner au préalable sur des images aériennes ou des images avec une vue plongeante sur les objets. Cela m’a permis de comparer comment chacun des réseaux réagissait face à l’image présentée. Tous les réseaux n’ont pas montré des résultats très convaincants mais l’équipe s’est orientée vers le Faster R-CNN [3], en se basant sur différents critères tels que : la documentation, les travaux réalisés en amont dans le domaine, les performances sur notre test ainsi que la communauté pouvant apporter un soutien en cas de problème.
Nous avons ainsi travaillé avec l’implémentation originale du Faster R-CNN [4] sous python et la librairie Caffe [5]. Le réseau de neurones a été adapté dans un premier temps pour être capable de reconnaitre des objets de petite taille (e.g. un objet de 30×30 pixels sur une image de 1000×1000 pixels) et les classes d’objets qui nous intéressent. Puis des jeux de données contenant des images aériennes ont été retravaillés pour les adapter à un format plus traditionnel et pour être utilisés par la suite pour entrainer notre réseau de neurones en se basant sur le Transfer Learning [6]. Une technique qui consiste à entraîner certaines parties du réseau et non la totalité, permettant un entraînement plus rapide et l’utilisation d’un jeu de données plus restreint.
Durant ce travail, j’ai étudié les paramètres qui influencent le plus la reconnaissance des objets dans les images aériennes, la rapidité avec laquelle le réseau de neurones apprend, les difficultés auxquelles on peut faire face et comment y remédier. Les résultats finaux restent encore à perfectionner, mais la bonne méthode pour y parvenir a été trouvée. Par manque de temps, je n’ai pu aller au-delà d’une performance moyenne (0.42 mAP) comparé aux résultats habituels pour les meilleurs réseaux de neurones et tester par moi-même les idées du groupe pour améliorer la reconnaissance.
Ce projet de fin d’études (PFE) fut une réelle opportunité pour moi, souhaitant travailler dans le domaine de la vision par ordinateur et l’intelligence artificielle, je n’aurais pas pu envisager un meilleur sujet pour mon PFE, qui plus est au sein du Fraunhofer Institut. J’y ai développé mon approche scientifique, la langue allemande dans le domaine technique et, j’y ai découvert le fonctionnement au sein d’un institut allemand.
Bibliographie
[1] J. Deng, W. Dong, R. Socher, L. Li, K. Li, and L. Fei-Fei, “ImageNet: A large-scale hierarchical image database,” in 2009 IEEE Conference on Computer Vision and Pattern Recognition, 2009, pp. 248–255.
[2] O. Russakovsky et al., “ImageNet Large Scale Visual Recognition Challenge,” International Journal of Computer Vision, vol. 115, no. 3, pp. 211–252, Dec. 2015.
[3] S. Ren, K. He, R. Girshick, and J. Sun, “Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks,” in Advances in Neural Information Processing Systems 28, C. Cortes, N. D. Lawrence, D. D. Lee, M. Sugiyama, and R. Garnett, Eds. Curran Associates, Inc., 2015, pp. 91–99.
[4] Ross, G. py-faster-rcnn. url: https://github.com/rbgirshick/py- faster- rcnn (online – Last accessed 07/10/2018)
[5] Y. Jia et al., “Caffe: Convolutional Architecture for Fast Feature Embedding,” in Proceedings of the 22Nd ACM International Conference on Multimedia, New York, NY, USA, 2014, pp. 675–678.
[6] J. Yosinski, J. Clune, Y. Bengio, and H. Lipson, “How Transferable Are Features in Deep Neural Networks?,” in Proceedings of the 27th International Conference on Neural Information Processing Systems – Volume 2, Cambridge, MA, USA, 2014, pp. 3320–3328.