wintics building smart camera applications

Building Smart Camera applications at an industrial scale by leveraging cutting-edge deep learning techniques

Computer vision is a fast-moving field of research

Smart Cameras are all about Computer Vision, the sub-field of AI that aims to build machines having human-level understanding of images or videos. It underwent a series of major breakthroughs in many vision tasks (like image classification, object detection, etc) since 2012. Part of the progress made came from research advances on how to train bigger and bigger neural networks. Over the past few years, researchers and engineers have been working on how to make deep learning more efficient and how to run neural networks using fewer resources. It is for instance today’s AI industry practice to reduce the arithmetic precision of real numbers when running neural nets in production. Roughly, we use 32 bits for representing neural nets weights and outputs during training, but we use much less (16 or 8 bits) in production. Despite all the research done so far, for numerous use cases neural networks still demand too much computing power to meet low latency constraints.

Hardware producers keep on innovating to follow algorithms breakthroughs

It is worth noting that the major part of the workload to run neural networks is linear algebra (matrix and vector operations). Companies like Nvidia, Google and Intel have been developing specialized software and hardware to perform this kind of arithmetic very efficiently. In 2017, Nvidia introduced the Volta micro-architecture containing Tensor Cores. These Tensor Cores are programmable chips allowing fused matrix-multiply-and-accumulate units that run concurrently alongside regular GPU cores. Tensor Cores implement new 16-bit floating-point HMMA (Half-Precision Matrix Multiply and Accumulate) and 8-bit integer IMMA (Integer Matrix Multiply and Accumulate) instructions for accelerating dense linear algebra computations. Google introduced in 2016 the Tensor Processing Unit (TPU) which was specifically designed for their deep learning platform called TensorFlow. Each TPU consists of two Tensor Cores that each consist of scalar, vector and matrix units (MXU). Currently, TPUs are not commercially available for purchase but can be used as a cloud service. The edge computing market has been targeted by NVIDIA and Google as well: Nvidia promotes the Jetson product line of embedded computing boards integrating small GPUs, and Google announced in March 2019 the Coral lightweight TPU.

wintics edge computing hardware

In addition to the hardware trend, we have witnessed the rise of software designed for optimizing neural networks for production, like Intel’s OpenVINO and NVIDIA’s TensorRT. More recently, Facebook open-sourced FBGEMM, a high-performance linear algebra library for running neural nets on CPU-servers. All these developments make new industrial AI use cases possible and generate great opportunities for innovation.

At Wintics, we combine the lastest innovations in both hardware and software to deliver high-performance solutions

At Wintics, we leverage NVIDIA technology. In terms of software, we have been extensively using their main high-performance low-level libraries in all our products: CUDA, CuDNN and TensorRT. In terms of hardware, we leverage high-performance GPUs for server applications and the Jetson product line for edge computing. We are currently able to process thousands of images per second on a single GPU, or even, to run real-time high-level directional traffic analysis from surveillance cameras on the lightweight Jetson Nano.

Here we share the results of some of our current works on Optimizing Siamese Neural Networks. This architecture has become popular in single object tracking in the past couple of years. We present the latency gains on the SiamRPN architecture brought by porting the neural network to C++, by optimizing it using TensorRT and by reducing arithmetic precision.

We performed benchmarks on 4 pieces of hardware: RTX 2080ti, Jetson Xavier, Jetson TX2 and Jetson Nano. Each device presents different architectures and delivers different computing power capabilities.

  Specs
Hardware Computing Power Architecture
RTX 2080Ti 4352 cores + 544 Tensor Cores Turing
Jetson Xavier 512 cores + 64 Tensor Cores Volta
Jetson TX2 256 cores Pascal
Jetson Nano 128 cores Maxwell

We measure latency by the number of frames per second (fps) and the tracking accuracy is quantified by the mean intersection over union (mIoU) with the ground truth labels. We use three levels of precision: 32-bit and 16-bit floating-points (FP32 and FP16, respectively) and 8-bit integer numbers (INT8). The benchmark below compares an open source code against our in-house optimized implementation.

Note: Most real-time applications require at least 30 fps.

  Frames per second (fps)
GPU Device Open source

(Python & FP32)

C++ & TensorRT & FP32 C++ & TensorRT & FP16 C++ & TensorRT & INT8
RTX 2080ti 111.1 126.7 147.1 177.3
Jetson Xavier 20.8 29.8 73.6 92.2
Jetson TX2 9.1 10.6 17.3 INT8 not supported
Jetson Nano 3.7 4.7 8.0 INT8 not supported

In order to assure that these speed gains come with no accuracy loss, we tested all the implementations on the OTB-2013 dataset. The table below shows the results.

  Score (mIoU)
GPU Device Open source

(Python & FP32)

C++ & TensorRT & FP32 C++  & TensorRT & FP16 C++ & TensorRT & INT8
RTX 2080ti 0.6445 0.6409 0.6406 0.6446
Jetson Xavier 0.6458 0.6431 0.6483 0.6344
Jetson TX2 0.6443 0.6396 0.6487 0.6371
Jetson Nano 0.6422 0.6401 0.6470 0.6431

In summary, Computer Vision is still a fast moving field: we still witness major breakthroughs coming from research and engineering every day. At Wintics, we pay attention to all new developments and adapt the best algorithms to our products. We invest in applied research to develop in-house high-performance algorithms. Those algorithms are natively and specifically designed to analyze urban scenes and are therefore able to deliver unmatched performance on their mobility and smart city use cases.

We illustrated how SiamRPN can be accelerated using C++, TensorRT and reducing precision. As a fruit of our specialization, we currently have an in-house customized implementation of SiamRPN which is even faster and supports multiple object tracking.

It is challenging to keep the pace and provide cutting-edge deep learning-based technology today. We tackle this with a very modular software stack that welcomes changes and updates. This is how we develop smart camera specialized technology, aiming to leverage AI to contribute to a more sustainable future.

[FR] L’infrastructure intelligente et connectée permettra l’avènement du véhicule autonome

Les promesses du véhicule autonome

Les véhicules autonomes sont la promesse ultime d’une mobilité durable, fluide et sûre. Les dernières études de marché prévoient d’ailleurs que les ventes de voitures connectées et autonomes pourraient représenter un marché de 55 millions d’unités vendues d’ici 20 ans.

Dans cette quête enthousiasmante, les constructeurs historiques multiplient les initiatives et sont confrontés à la forte concurrence des géants de la Tech (Google, Apple, Baidu, Uber, etc.). Cette convergence entre le secteur automobile et la Tech se matérialise aussi par des alliances entre les grands acteurs (Cisco et Valeo, Intel et Toyota, etc) et des investissements colossaux : Volkswagen vient d’injecter 2,6 milliards de dollars dans Argo AI (start-up spécialisée dans le véhicule autonome), Uber a dépensé plus d’un milliards de dollars entre 2016 et 2018 dans le véhicule autonome, Audi a annoncé un plan d’investissement de 14 milliards d’euros sur 5 ans dans la voiture autonome et électrique, etc.

La course effrénée a permis des progrès technologiques majeurs, mais elle n’en est encore qu’à ses balbutiements tant les défis à relever restent nombreux avant de se laisser conduire par son véhicule n’importe où.

Etat des lieux de l’autonomie actuelle

L’autonomie des véhicules se mesure sur une échelle allant du niveau 0 (aucune fonctionnalité automatisée) au niveau 5 (conduite totalement automatisée sans assistance de conducteur). Dans chacun des trois premiers niveaux, la responsabilité légale du conducteur est toujours engagée en cas d’accident :

  • Niveau 1 «Hands on» : aides à la conduite sous surveillance du conducteur
  • Niveau 2 «Hands on » ou « Hands off» : conduite automatisée sous surveillance du conducteur
  • Niveau 3 «Eyes off» : conduite automatisée dans des situations définies sans surveillance du conducteur, avec reprise en main requise par le conducteur en cas de demande du système
  • Niveau 4 «Mind Off» : conduite automatisée dans des situations définies sans surveillance conducteur sans besoin de reprise en main
  • Niveau 5 « Driverless » : conduite automatisée sans conducteur

Les constructeurs ont pour l’instant atteint le niveau 3 en commercialisation, correspondant à une voiture semi-autonome dans laquelle le conducteur peut, dans certaines situations prédéfinies (embouteillages, stationnement), vaquer à d’autres occupations tout en restant capable de reprendre le volant à tout moment. De nombreux défis (juridiques, éthiques, technologiques) restent à relever pour aller au-delà.

De nombreux défis à relever pour atteindre l’autonomie complète

En mars 2018, un accident mortel causé par un véhicule Volvo opéré par Uber, a entrainé un arrêt général temporaire des tests sur route ouverte et a soulevé un doute sur la sécurité des véhicules autonomes dans l’opinion publique. Dans ce cas, l’opérateur à bord n’a pas réussi à reprendre les commandes et éviter l’accident. Ce drame a mis en lumière les limites du niveau 3 d’autonomisation : le conducteur ne sera pas toujours en mesure de reprendre le contrôle assez rapidement. Volvo a alors décidé de faire évoluer sa stratégie en visant de faire passer ses véhicules directement du niveau 2 d’autonomie au niveau 4 afin d’éviter les problèmes de reprise de volant.

La Californie a d’ailleurs autorisé les essais des véhicules sans opérateur mais avec contrôle du véhicule à distance. Cette nouvelle configuration soulève de nouvelles questions, notamment sécuritaires avec les risques de prise de contrôle à distance par un tiers malveillant.

La question de la responsabilité reste aussi largement ouverte : qui est responsable en cas d’accident impliquant une voiture autonome ? Volvo a pris la décision claire d’assumer la responsabilité juridique en cas d’accident impliquant l’une de ses voitures conduites en mode autonome, mais la question reste ouverte chez la plupart des constructeurs.

En plus de ces enjeux sécuritaires et juridiques, les défis technologiques restent aussi nombreux dans la course à l’autonomie.

La communication V2I indispensable au succès du véhicule autonome

Malgré la multitude de capteurs dont les prototypes de véhicules autonomes sont équipés, leur perception en conditions optimales se limite entre 200 et 300 mètres, ce qui, à 130 km/h, représente une distance parcourue entre 5 et 8 secondes. Cela reste donc faible pour s’adapter à un danger imprévu tel qu’une voiture immobilisée ou une zone de travaux. Surtout, cette distance de perception se réduit significativement en cas d’intempérie.

Pour de nombreux experts, seul un dialogue instantané entre la route et le véhicule permettra d’augmenter suffisamment la perception des véhicules en toutes circonstances pour garantir la sécurité des passagers. L’infrastructure intelligente est donc un atout essentiel au développement du véhicule autonome. Elle permettra d’enrichir les données contextuelles diffusées au système de guidage et d’offrir une perception avancée de la route pour optimiser la prise de décision du véhicule et sa trajectoire.

Certains équipements communiquent déjà des informations tant à destination des usagers et de certains véhicules, que des gestionnaires d’infrastructures. Par exemple, les véhicules connectés aux Etats-Unis peuvent connaitre dans plusieurs villes le temps restant avant le passage au vert d’un feu tricolore. Les unités de bords de route (UBR), les panneaux à messages variables (PMV) ou encore les feux de signalisation possèdent de telles fonctionnalités. Interconnectés entre eux grâce aux technologies « Cooperative Intelligent Transport Systems » (C-ITS), ils participent à la gestion du trafic routier.

À terme, les véhicules autonomes seront connectés à ces mêmes systèmes et optimiseront leur conduite grâce à la multitude d’informations envoyées par les infrastructures (état du trafic, présence d’objets dangereux, accidents, disponibilité des places de stationnement, travaux en voirie, etc.) Par exemple, au niveau des carrefours et intersections complexes, des UBR pourront organiser les priorités entre les véhicules autonomes, qui eux-mêmes interagiront entre eux.

Récemment, les constructeurs automobiles se sont entendus pour concevoir un standard de communication garantissant la compatibilité des échanges entre tous les types de véhicules. Ce système de communication « Vehicle to Infrastructure » (V2I) sera directement relié aux équipements de la route, qui l’alimenteront d’une multitude d’informations récoltées grâce aux technologies dont ils seront équipés : capteurs, thermomètres, caméras, etc.

Les constructeurs de véhicules et les gestionnaires d’infrastructure n’hésitent d’ailleurs pas à collaborer dans ce sens. PSA vient de mener une nouvelle expérimentation, en collaboration avec Vinci Autoroutes qui portait sur la mise en sécurité du véhicule : dans une situation complexe (ex. fin de voie rapide), après avoir constaté que le conducteur ne reprenait pas la main comme demandé par le système, le véhicule est allé se garer de lui-même dans une zone refuge.

Wintics et la communication V2I

Chez Wintics, nous voulons construire une vivre-ensemble plus durable grâce à l’IA. Nous sommes convaincus que les véhicules autonomes vont contribuer à rendre les villes plus confortables et plus durables et sommes fiers de participer à leur développement.

En effet, nous avons développé un boitier qui se branche sur n’importe quel type de caméra (optique ou thermique) pour transformer les images brutes en statistiques instructives sur les volumes et les directions des piétons et des véhicules. De cette façon, nous pouvons capitaliser sur les millions de caméras de vidéo-surveillance pour rajouter de l’intelligence aux infrastructures qui peuvent communiquer aux véhicules connectés, en temps réel, sur l’état du trafic, la présence de danger, la disponibilité des places de stationnement, la présence de véhicules non connectés (notamment mobilité douce), etc.

Analyse automatique du trafic aux intersections

[FR] Nos algorithmes en action : l’analyse de la composition du trafic aux intersections

Découvrez une démonstration de nos algorithmes d’analyse de trafic aux intersections et comprenez comment ils peuvent aider à aménager des villes plus durables.

La ville du 20ème siècle s’est organisée autour de la voiture

Les villes s’adaptent, elles sont en mutation permanente. Au cours du 20ème siècle, elles ont ainsi fait une place importante à la voiture qui est devenue le mode de transport privilégié de nombreux citoyens.

Exemple emblématique de ce phénomène, la voie Pompidou (voie expresse sur les quais de Seine) a été inaugurée à Paris en 1967 par le premier ministre éponyme de l’époque qui annonçait alors que « la ville doit s’adapter à la voiture ».

Aujourd’hui, les mobilités évoluent

Depuis une quinzaine d’années, on observe néanmoins un réel tournant avec une volonté des pouvoirs publics de faire diminuer l’usage de la voiture au profit de mobilités plus douces. Ce nouveau paradigme correspond à une prise de conscience des dirigeants et des citoyens de l’enjeu majeur de la qualité de l’air respirée dans les villes et de la promotion des mobilités actives (marche, vélo) pour lutter contre la sédentarité et les risques qui l’accompagnent (ex : risques cardio-vasculaires).

Lyon a ainsi été précurseur avec le lancement de son service de vélos partagés Vélo’v en 2005, Paris ayant suivi en 2007 avec le lancement des Vélib qui a connu jusqu’à 300 000 abonnés en 2016.

Aujourd’hui, les Vélib enregistrent 80 000 locations par jour, chiffre amené à augmenter puisque le nombre de vélos proposés à la location devrait doubler cet été en passant de 10 000 à 20 000.

Selon le dernier « Bilan des Déplacements » publié par la Ville de Paris, l’usage du vélo a ainsi été multiplié par 3 entre 1997 et 2017.

Plus récemment, les trottinettes ont fait leur apparition en ville avec un succès significatif. A Paris, le nombre de trottinettes est ainsi passé de 10 000 à 20 000 en moins d’un an quand le nombre d’opérateurs passait de 3 à 10.

Le paysage des mobilités urbaines est ainsi en pleine mutation, essentiellement au profit des nouvelles mobilités douces.

En parallèle de cela, les acteurs publics et privés ont lancé différentes offres visant à faire baisser l’usage de la voiture individuelle (VTC, véhicules électriques en free floating, etc.)

Le développement des transports en commun s’inscrit dans la même stratégie : nouvelles lignes de tram à Paris, chantiers du Grand Paris Express, prolongement de la ligne E du RER, etc.

Cela requiert une modification des infrastructures

Les villes ont été pensées pour les voitures avec des grandes artères polluées et souvent dangereuses pour les usagers des mobilités douces (vélos, trottinettes, etc). L’existence de rocades, de périphériques, de zones dortoirs ou encore de centres commerciaux isolés mettent en avant le fait que les villes ont longtemps été aménagées selon cette logique que l’on se déplace en voiture.

Leur organisation et leurs infrastructures ne sont aujourd’hui plus adaptées aux mobilités douces pourtant de plus en plus plébiscitées par l’opinion publique.

Ce constat pose une vraie question de réaménagement de la ville, l’idée étant de la désaménager partiellement pour les voitures afin de la rendre plus attractive pour les vélos et ainsi favoriser leur adoption.

Une telle stratégie vise à faire émerger un vivre ensemble plus durable et à maximiser l’intérêt commun :

  • Amélioration de la qualité de l’air
  • Baisse de la congestion et donc du temps de transport pour les automobilistes restants (notamment les professionnels)
  • Amélioration de la sécurité des piétons et des cyclistes
  • Déplacements plus rapides en vélo grâce à des pistes dédiées

La nécessité de comprendre le trafic pour réaménager correctement

Adapter la voirie aux nouveaux modes de déplacement suppose de comprendre le trafic, sa composition (piétons, vélos, trottinettes, voitures, bus, etc.) et son organisation (trajectoire des véhicules).

Historiquement, de telles études de trafic pouvaient être réalisées de différentes manières, sans pour autant que l’une d’entre elles ne réponde vraiment au besoin de connaissance du trafic.

  • Les opérateurs comptant manuellement les véhicules sur la chaussée ne permettent pas de mener des études sur longue durée alors que le trafic est généralement très différent selon l’heure de la journée et le jour de la semaine.
  • Les tubes pneumatiques et les boucles magnétiques comptant les véhicules qui passent dessus ne permettent pas de faire de vraies différences entre les modes de déplacement.
  • Les études menées sur la base de vidéos analysées manuellement par des opérateurs sont entachées d’un taux d’erreur significatif qui peut biaiser les résultats et ainsi limiter leur portée.

Aujourd’hui, les derniers algorithmes de vision par ordinateur apportent une réponse à cette problématique et permettent d’analyser de façon rapide et fiable des flux de déplacement en ville.

Par exemple à l’échelle d’un carrefour, ils permettent de connaitre de façon précise et en temps réel le nombre de véhicules de chaque catégorie et leur direction. Cela permet ensuite aux gestionnaires de la voirie d’aménager un carrefour ou une rue en fonction des usages et ainsi d’accompagner le développement des nouvelles mobilités : élargissement d’un trottoir trop petit, création d’une piste cyclable, création de places de livraisons pour désengorger les couloirs de bus dans lesquels les camionnettes se garent en double file, etc.

De tels algorithmes permettent également de gérer de façon dynamique les feux de circulation et ainsi pouvoir favoriser certains modes de déplacement (ex : priorité du passage du feu au vert pour les piétons si plus de XX personnes en attente).

Les algorithmes de vision de Wintics au service d’une ville durable

Dans la vidéo présentée ci-dessus, les algorithmes de Wintics produisent des statistiques de trafic multimodales en temps réel.

Pour cette démonstration, nous nous sommes concentrés sur les cinq catégories suivantes : voitures, camionnettes, camions, bus, scooters. Dès lors, quand un objet de l’une de ces catégories est détecté dans la vidéo, il est tracké et compté en fonction de sa voie de circulation avec une précision de 97%.

Un tel dispositif requiert une infrastructure légère : une caméra (optique ou thermique) accompagnée d’un petit boitier de 12cm x 12cm x 9cm (exigeant une puissance max de 30W) qui héberge nos algorithmes et procède aux calculs en temps réel.

Nos solutions s’appuient ainsi sur les dernières innovations algorithmiques pour transformer les vidéos urbaines en indicateurs et statistiques précieux pour une gestion optimisée des villes. Elles nous permettent de réaliser des études de trafic de véhicules (voitures, camionnettes, camions, bus, vélos, trottinettes, etc.) et de piétons sur la base d’images vidéo pour mieux comprendre les flux de circulation en amont de travaux majeurs de réaménagement urbains.