Let’s Build : supprimer l’arrière-plan avec Transloadit
Supprimez l’arrière-plan d’une photo de produit ou d’un portrait à partir d’un fichier local et enregistrez le résultat au format PNG. Cet exemple envoie une image à Transloadit, attend la fin du traitement, puis télécharge le résultat dans un nouveau fichier local.
Ce que nous allons créer
La commande accepte un fichier PNG ou JPEG non vide de 20 MiB maximum et exige un chemin de sortie
explicite se terminant par .png. Ces limites sont propres au programme
d’exécution de ce tutoriel. Le fichier d’origine reste inchangé ; vous inspectez l’image enregistrée
avant de l’utiliser dans un catalogue ou une création graphique.
La suppression d’arrière-plan est facturée. Vous devez disposer d’une Auth Key et d’un Auth Secret existants pour un Workspace Transloadit, ainsi que d’une image que vous avez l’autorisation d’envoyer. Aucun jeu distinct d’informations d’identification auprès d’un fournisseur d’IA n’est nécessaire. La recette conserve la sélection automatique du fournisseur utilisée par défaut par le Robot ; le programme ne crée ni ne modifie les informations d’identification. Consultez les tarifs avant de traiter davantage de fichiers.
Vue d’ensemble de la chaîne de traitement
Le Robot 🤖 /image/bgremove prend l’image envoyée et produit le PNG. Le programme enregistre ensuite le résultat en local, ce qui vous évite de conserver une URL de résultat temporaire.
Local PNG or JPEG → upload → /image/bgremove → download → result.png
Extrait d’Assembly
Le programme téléchargeable exporte sa recette sous le nom example. Avec
l’organisation du projet présentée ci-dessous, ce code TypeScript lit les mêmes
Assembly Instructions que celles utilisées par
la commande, sans soumettre d’Assembly :
import { example } from './background-remover/run.ts'
const steps = example.steps()
Son Step remove_background utilise :original, définit
format: 'png' et marque la sortie avec result: true. Si vous adaptez
la chaîne de traitement, conservez vos modifications dans la recette téléchargée afin que la
commande et votre application utilisent les mêmes instructions.
Essayer l’application d’exemple
Installez d’abord Node.js 26,
Corepack et cURL. L’environnement d’exécution testé était
Node.js 26.12.1 ; pour une nouvelle installation, utilisez une version corrective maintenue de
Node.js 26. Corepack est un prérequis distinct. Commencez dans un nouveau répertoire vide, en dehors
d’un projet Node existant, et suivez le
README de l’exemple pour installer et télécharger l’application.
Il fixe les versions Yarn 4.12.0, @transloadit/node 4.14.0,
zod 3.25.76 et zod-to-json-schema 3.25.2 comme une combinaison
testée, sans prétendre qu’il s’agit des versions les plus récentes des paquets. Exécutez les
commandes d’installation une par une et arrêtez-vous si l’une d’elles échoue.
Téléchargez à la fois background-remover/run.ts et shared/runtime.ts avec les
commandes du README. Leur emplacement relatif est important : le programme importe
../shared/runtime.ts. Exécutez la commande --help du README avant de
configurer l’accès ; elle fonctionne sans informations d’authentification. Conservez le fichier de
verrouillage généré si vous adaptez l’exemple.
Dans le même shell, exportez vos informations d’authentification existantes en remplaçant les valeurs de substitution en local :
export TRANSLOADIT_AUTH_KEY='YOUR_AUTH_KEY'
export TRANSLOADIT_AUTH_SECRET='YOUR_AUTH_SECRET'
Gardez l’Auth Secret hors du contrôle de version et du code exécuté dans le navigateur. Le programme lit directement ces variables d’environnement ; il ne charge pas de fichier d’environnement.
Placez votre image à l’emplacement input.jpg, ou remplacez l’argument d’entrée
par son chemin. Choisissez un nom de fichier de sortie qui n’existe pas. L’exécution de cette
commande autorise un traitement facturé :
node background-remover/run.ts --input ./input.jpg --output ./result.png
En cas de réussite, le terminal affiche Saved
suivi du chemin du fichier de sortie local. Ouvrez result.png dans un éditeur
d’images qui affiche la transparence, ou placez-le sur un fond contrasté. Vérifiez que l’arrière-plan
est devenu transparent et que le sujet, les contours et les détails fins restent exploitables.
Une Assembly terminée et un PNG valide ne suffisent pas à attester la qualité du détourage.
Le programme refuse toute destination existante avant de soumettre une Assembly ; une nouvelle exécution nécessite donc un nouveau nom de fichier de sortie. Il limite le résultat téléchargé à 20 MiB, accorde jusqu’à cinq minutes au traitement et prévoit un délai d’expiration distinct de 30 secondes pour le téléchargement du résultat. Si une exécution échoue après avoir affiché un identifiant d’Assembly, inspectez cette Assembly dans la Console avant de réessayer. Un dépassement de délai ou une interruption en local ne prouve pas que le traitement distant s’est arrêté, et un traitement ayant échoué peut tout de même être facturé. Le programme ne relance pas automatiquement une Assembly.
Images d’entrée suggérées
Commencez par une photo sans contenu sensible montrant un produit aux contours nets, ou par un portrait que vous avez l’autorisation d’envoyer. Comparez le PNG enregistré à l’original, à la même échelle. Les cheveux, les matériaux translucides, les ombres et les objets au premier plan qui ressemblent à l’arrière-plan nécessitent une inspection attentive ; choisissez une autre image d’entrée si le détourage supprime un élément dont vous avez besoin.
Pour aller plus loin
Après avoir inspecté le détourage, vous pouvez enrichir la recette téléchargée avec des Steps de redimensionnement ou de création de miniatures. La documentation du Robot décrit les options de suppression d’arrière-plan disponibles. Conservez le PNG local comme résultat vérifié avant de créer un processus d’envoi de fichiers plus complet.

