SAHI revisite
Le nouveau modele de tiling de Picsellia ameliore la detection d'objets en preservant la resolution, en particulier pour les objets plus petits, tout en offrant des modes de tiling flexibles.
Picsellia Team
·6 min read

Pret a construire de la vision par ordinateur ?
Des images brutes aux modeles en production. Essai gratuit, sans carte bancaire, resiliable a tout moment.
Comme la plupart d'entre vous le savent en lisant ce blog, SAHI signifie Slicing Aided Hyper Inference. Il a facilite la detection de petits objets a l'ecran pour les developpeurs sans avoir a re-entrainer leurs modeles.
Sahi computer vision tiling
SAHI chez Picsellia
Au debut, SAHI etait utilise a partir d'un depot public disponible sur GitHub. Le code n'appartenait pas a Picsellia. Mais notre equipe voulait faire plus et malheureusement, SAHI n'etait pas assez flexible pour nous. C'est pourquoi nous avons redeveloppe les fonctionnalites principales de SAHI et sommes maintenant prets a lancer notre propre modele de tiling. Pour Alexis, ingenieur logiciel chez Picsellia, "tiling" est un terme plus adapte pour leur modele par rapport a SAHI. Voyons pourquoi.
Tiling - Quoi, pourquoi et quand ?
Avant qu'une image n'arrive dans le reseau de neurones pour la prediction et le traitement ulterieur, elle est redimensionnee en format carre. Redimensionner une image implique de la reformater et de la reduire dimensionnellement en un carre de 640x640. Ainsi, apres le redimensionnement, la resolution de l'image concernee diminue et des informations precieuses peuvent etre perdues. Le tiling est utile pour contourner l'impact de la perte d'informations lors du redimensionnement.
En termes simples, le tiling ajuste le contenu de l'image en fonction de la taille des objets. Les objets plus grands ne necessitent generalement pas de tiling, tandis que les objets plus petits necessitent une attention accrue pour garantir une detection precise, rendant le processus d'entrainement du modele plus efficace.
Sahi computer vision tiling 66f6a684cfaf64373c73fd23 66f6a677ce0d587b4bdca0dc presentation1 25203
Le tiling est une technique cruciale en analyse d'images pour la vision par ordinateur, permettant un examen approfondi de regions specifiques de l'image tout en maintenant une haute resolution. Cette methode est souvent appliquee pour detecter de petits objets dans de grandes images haute resolution. En termes simples, le tiling consiste a ajuster le contenu de l'image aux tailles des objets. Plus l'objet que vous devez annoter est grand, moins vous aurez besoin de tiler. Plus l'objet est petit, plus il faut recentrer autour de lui pour faciliter le processus d'entrainement du modele.
Tiling - Un hyperparametre
Selon Alexis, la taille des tuiles peut etre traitee comme un hyperparametre supplementaire lors de l'entrainement d'un modele, car lorsque vous entrainez un modele avec un processus de tiling, theoriquement il existe une taille de tuile optimale pour votre probleme et vous devez la trouver. Les performances du modele dependent de la precision de la taille de vos tuiles et pour trouver la taille adequate, vous devez continuer a experimenter. La taille de la tuile influence grandement les performances d'un modele, la plage ideale se situant entre 500 et 1000 pixels.
Cependant, appliquer des processus de tiling a un dataset n'est PAS toujours la meilleure option selon le cas d'usage. Le tiling ne donnera pas toujours les meilleurs resultats, ni les plus precis. Il existe plusieurs strategies de tiling disponibles sur Internet. Des depots publics fournissent des codes publics pour toutes ces differentes strategies.
Modes de tiling
Disons que vous avez une image de 100 pixels de largeur et que vous utilisez deux tuiles pour la decouper. La premiere tuile couvre 80 pixels sur les 100, mais la deuxieme tuile n'aura que 20 pixels restants a couvrir. Comment allez-vous tiler 20 pixels pour une boite englobante de 80 pixels ? Il existe plusieurs "modes" de tiling disponibles pour resoudre ce probleme. Dans ce cas, SAHI suit le mode "drop" ou, comme son nom l'indique, SAHI supprime la deuxieme tuile avec les 20 pixels. Et avec ces pixels, SAHI supprime egalement les informations qu'ils contiennent.
Mais il existe au moins 6 a 7 modes de tiling pour ajuster les tuiles "de bordure" (comme la tuile de 20 pixels dans l'exemple precedent) et chez Picsellia, l'equipe implemente la plupart d'entre eux pour eviter la perte d'informations pendant le processus d'entrainement. Avoir plusieurs modes de tiling offre egalement de la flexibilite aux utilisateurs pour decider quel mode de tiling ils souhaitent implementer pour leurs cas d'usage specifiques, leur donnant le controle de leurs donnees et de l'entrainement de leurs modeles.
Voici quelques-uns des modes de tiling :
Constant : c'est un cas d'usage classique, active par defaut.
Sahi computer vision tiling
Drop : c'est ce que faisait SAHI.
Sahi computer vision tiling
Reflect : appliquer un reflet de la tuile jusqu'a ce que la tuile soit complete. Similaire a un miroir.
Sahi computer vision tiling
Edge : Prend la derniere ligne ou colonne du pixel et la repete jusqu'a ce que la tuile soit complete.
Sahi computer vision tiling
Wrap : Repeter la tuile jusqu'a ce que la tuile soit complete.
Sahi computer vision tiling
NMS ou NMM
Les modeles de detection d'objets generent souvent des detections en double pour le meme objet en raison du chevauchement des boites englobantes. Le Non-max Merging (NMM) fusionne les boites qui se chevauchent en une seule detection. Il construit des groupes de detections qui se chevauchent et combine leurs proprietes pour creer un resultat plus consolide. D'autre part, le NMS ou Non-max Suppression est un algorithme qui traite la double detection en conservant la boite englobante la plus confiante et en eliminant les autres. Il fonctionne en comparant les chevauchements entre les boites en fonction de la valeur d'Intersection-Over-Union (IOU), eliminant les detections moins confiantes. Entre les deux, le NMS est plus rapide et devrait etre le choix par defaut dans la plupart des cas. Le NMS est presque toujours utilise lorsqu'une prediction est faite avec un modele d'IA. Le NMM est une etape supplementaire necessaire lors de la fusion des annotations des tuiles. Cependant, le NMM est utile lorsqu'une fusion plus precise des detections qui se chevauchent est necessaire, surtout lorsque les objets sont sous-detectes. Les deux methodes peuvent etre testees et ajustees en fonction des exigences specifiques de la tache.
Conclusion
SAHI a ete un outil precieux pour ameliorer la detection d'objets, en particulier pour les objets plus petits, sans necessite de re-entrainement extensif. Cependant, l'equipe Picsellia a reconnu ses limites et a pris l'initiative de developper un modele de tiling plus flexible et complet. Elle a introduit une approche plus raffinee du traitement d'images, permettant une analyse haute resolution sans perdre de details importants.
La flexibilite des differents modes de tiling et la capacite de traiter la taille des tuiles comme un hyperparametre donne aux developpeurs un plus grand controle sur le processus d'entrainement, facilitant l'adaptation des solutions a des cas d'usage specifiques.
L'approche de Picsellia en matiere de tiling permet aux developpeurs d'obtenir de meilleures performances dans leurs modeles de vision par ordinateur, conduisant a un entrainement de modeles plus precis et plus efficace. Reservez votre demo maintenant !
Suggestions Picsellia
Livrez de l'IA visuelle 10x plus vite
Picsellia est la plateforme MLOps de bout en bout pour la vision par ordinateur — de la gestion des donnees au deploiement en production.
Voir la plateformeRestez informe
Recevez les derniers articles sur la vision par ordinateur, le MLOps et l'IA directement dans votre boite mail.
Articles associes

Best Image Annotation Tools for Machine Learning
A practical comparison of the leading image annotation platforms for computer vision — what each one is actually good at, and where they fall short.

Computer Vision Use Cases by Industry: The Complete Guide
A practical breakdown of how computer vision is actually used across manufacturing, agriculture, healthcare, retail, logistics, security, and more — with the real problems it solves in each.

Roboflow Alternatives for Enterprise Computer Vision Teams
Roboflow is a strong starting point for computer vision prototyping. Here's an honest look at the alternatives teams evaluate once they need enterprise deployment, on-premise infrastructure, or a full MLOps pipeline.