PERFORMANCES
Navigateurs compatibles et performances de la suppression d'arrière-plan côté client
Un outil qui fait tourner le modèle sur votre appareil hérite de ses limites. Voici les API de navigateur dont il a besoin, les voies d'exécution dont il dispose et les variables qui déterminent le temps de traitement d'une vidéo. bgremover.ai fait tourner son modèle sur nos serveurs GPU ; votre navigateur redimensionne, compose et encode tout de même la vidéo.
4octets
Par pixel décodé
8,3Mo
Une image 1080p
33Mo
Une image 4K
3
Voies d'exécution
1280px
Notre envoi, grand côté
Ce que le navigateur doit fournir
Un outil de suppression d'arrière-plan côté client tourne dans une page web : chaque capacité dont il a besoin doit être exposée par le navigateur, pas installée. Quatre comptent, et un appareil à qui il en manque une seule ne peut pas faire tourner l'outil.
WebAssembly exécute le modèle dans le bac à sable du navigateur, ce qui garde les images d'un outil côté client sur votre appareil ; bgremover.ai les envoie au contraire sur nos serveurs GPU, comme l'explique comment fonctionne la suppression d'arrière-plan. L'inférence consiste surtout en multiplications de matrices : elle réclame un GPU. WebGL en expose un via une API graphique, WebGPU via une API de calcul.
Sans l'un ni l'autre, l'inférence se rabat sur le CPU. Il faut aussi quelque chose pour encoder les images finales dans un fichier : MediaRecorder, la voie la plus répandue, ou WebCodecs, la plus fine. La quatrième exigence, la mémoire pour les images décodées, est la plus sous-estimée.
Trois voies d'exécution
| Voie | Tourne sur | Vitesse | Disponibilité |
|---|---|---|---|
| WASM avec SIMD | CPU, plusieurs valeurs par opération | La plus lente | Presque partout |
| WebGL | GPU, via des shaders graphiques | Moyenne | Tout GPU |
| WebGPU | GPU, via une API de calcul | La plus rapide | La moins répandue |
WebGL est un contournement plutôt qu'une vraie conception : l'API a été faite pour dessiner des triangles, et faire transiter les données par des textures prend du temps. Elle reste le choix par défaut en pratique. WASM monopolise le thread principal sauf si le travail passe dans un worker, et BEN2 exige WebGPU en FP16, donc uniquement des GPU récents sur ordinateur.
C'est la disponibilité qui décide, pas la préférence : un outil qui n'implémente que WebGPU est rapide là où il tourne et absent partout ailleurs.
Pourquoi la première exécution est plus lente
-
Le modèle se télécharge une fois
Avant le traitement de la moindre image.
-
Il s'initialise et chauffe
Puis la première image passe.
-
Les vidéos suivantes sautent ces deux étapes
Servi depuis le cache, il ne reste que l'initialisation.
Un outil côté client devrait donc charger le modèle sur une action de l'utilisateur, pas au chargement de la page : des mégaoctets de WebAssembly qui arrivent dès votre arrivée donneraient l'impression d'une page cassée à quiconque venait simplement lire.
Le calcul des images décodées
Une image vidéo décodée, ce sont des pixels non compressés : la résolution domine donc la mémoire.
4octets
Par pixel
8,3Mo
Une image 1080p
33Mo
Une image 4K
5
Images en mémoire de travail
Ces chiffres sont des calculs, pas des mesures, et la taille du fichier compressé est un mauvais indicateur. Rien n'exige de décoder toutes les images à la fois, mais la chaîne garde un ensemble de travail : l'image en cours de décodage, celle en cours de segmentation, son masque, la composition et le tampon de l'encodeur.
Multipliez quelques images par 33 Mo en 4K et le budget d'un onglet commence à compter, surtout sur téléphone. Si une longue vidéo en haute résolution échoue ou que l'onglet se recharge, réduisez la résolution plutôt que la durée : diviser chaque dimension par deux divise la mémoire par quatre.
Ce qui détermine le temps de traitement
Ce sont des relations, pas des chiffres : un temps mesuré sur un ordinateur portable ne dit rien d'un téléphone.
- Nombre d'imagesDurée multipliée par la fréquence d'images ; 60 i/s, c'est le double de 30 i/s.
- RésolutionPèse sur le décodage, la composition et l'encodage ; l'inférence reste fixe.
- Voie d'exécutionWebGPU, WebGL et WASM-SIMD diffèrent sur une même machine.
- Type d'appareilLes GPU d'ordinateur fixe, de portable et de téléphone sont trois machines différentes.
- Choix du modèleLe matting coûte plus cher par image que MediaPipe.
- État thermiqueUn travail GPU soutenu sur un téléphone chaud est bridé.
Pas encore de tableau de temps. Il faut de vrais tests : 60 secondes de 1080p à 30 i/s sur ordinateur fixe et portable, 30 secondes sur Android et iPhone. Un benchmark inventé serait le seul chiffre invérifiable de cette page.
Matrice de compatibilité des navigateurs
| Exigence | Chrome, Edge | Firefox | Safari | Mobile |
|---|---|---|---|---|
| WebAssembly | ✓ | ✓ | ✓ | ✓ |
| WebAssembly SIMD | ✓ | ✓ | ✓ | Non testé |
| WebGL | ✓ | ✓ | ✓ | Non testé |
| WebGPU | ✓ | Non testé | Non testé | Non testé |
| MediaRecorder | ✓ | ✓ | Non testé | Non testé |
Une vérification navigateur par navigateur s'impose ici avant que le site n'annonce une compatibilité universelle. Ce que nous pouvons affirmer sans test relève de l'architecture : un outil côté client a besoin de WebAssembly et d'une voie GPU, pas de WebGPU. bgremover.ai a besoin de WebCodecs, qu'il utilise pour préparer l'envoi et construire l'export.
La réalité honnête sur mobile
Pour un outil côté client, c'est la légèreté de la segmentation selfie MediaPipe qui rend les navigateurs mobiles viables. Quelques mégaoctets et des besoins mémoire modestes tiennent dans le budget d'un onglet sur téléphone ; un modèle pour GPU d'ordinateur, non. bgremover.ai contourne le problème en faisant tourner son modèle sur des serveurs GPU ; le téléphone décode et encode tout de même la vidéo.
| Sur téléphone | bgremover.ai | FuzzPuppy |
|---|---|---|
| Fonctionne dans un navigateur mobile | Oui | Ordinateur uniquement |
| Modèle | Notre modèle d'IA, sur serveurs GPU | MODNet et BEN2 |
| Export alpha | ✗ | MOV alpha, MP4 sur fond vert |
| Exige WebGPU | ✗ | Oui |
| Prix | Gratuit | Gratuit |
Nous n'annoncerons pas de compatibilité mobile universelle avant d'avoir testé chaque navigateur. Le mobile est plus difficile : moins de mémoire par onglet, des onglets déchargés sans ménagement, un bridage thermique. Des vidéos plus courtes en résolution plus basse sont la voie fiable, et les photos passées dans l'outil pour supprimer le fond d'une photo ne coûtent qu'une image.
Questions fréquentes
Quels navigateurs et appareils sont pris en charge ?
bgremover.ai a besoin d'un navigateur récent avec WebCodecs, qu'il utilise pour préparer l'envoi et construire l'export : les versions actuelles de Chrome, Edge, Firefox et Safari sur ordinateur conviennent. Les navigateurs mobiles remplissent en principe les mêmes conditions, et la matrice ci-dessus est en cours de vérification.
Est-ce que ça marche sur mobile ?
Oui. Le modèle tourne sur nos serveurs GPU : le téléphone se contente de préparer l'envoi et de construire l'export. Les vidéos courtes y sont plus fiables, car la mémoire des onglets est plus limitée.
Pourquoi la suppression d'arrière-plan prend-elle un peu de temps ?
La vidéo est redimensionnée et envoyée, traitée sur nos serveurs GPU, puis composée et encodée dans votre navigateur. Le traitement démarre dès l'arrivée des premières secondes, et aux heures de pointe une tâche peut attendre brièvement qu'un GPU se libère. Le temps dépend du nombre d'images.
Pourquoi la première exécution est-elle plus lente que la deuxième ?
Avec un outil côté client, le modèle se télécharge à la première utilisation puis le navigateur le met en cache : la première vidéo paie le téléchargement et l'initialisation. Sur bgremover.ai, le modèle tourne sur nos serveurs ; la première vidéo ne fait que récupérer la bibliothèque vidéo de la page, que le navigateur met ensuite en cache.
Pourquoi garder l'onglet du navigateur ouvert ?
L'onglet envoie la vidéo, récupère les masques depuis nos serveurs et construit l'export. Le fermer annule la tâche, et l'export ne peut pas être repris depuis un autre onglet ; la page confidentialité explique ce qui est conservé de notre côté.
Une vidéo plus longue prend-elle proportionnellement plus de temps ?
En gros, oui, car le temps suit le nombre d'images, et doubler la durée double le nombre d'images. Augmenter la fréquence d'images a le même effet. Augmenter la résolution coûte plus cher en décodage, composition et encodage, mais pas en segmentation.
Essayez l'outil de suppression d'arrière-plan
Essayez sans inscription. Votre fichier est traité sur nos serveurs GPU et n'est jamais conservé.