LeanImg

¿Cómo puedo eliminar el fondo de una imagen de forma gratuita y sin marca de agua?

Lo que hace el modelo IS-Net dentro de tu pestaña del navegador, por qué el recorte siempre es un PNG más grande y cómo reducir ese PNG, con números medidos.

Cada eliminador de fondo gratuito hace las mismas dos promesas: sin marca de agua y sin registro. Casi todos ellos aún quieren tu archivo. Se publica en un servidor, un modelo se ejecuta allí y una política de retención promete la eliminación en una hora o un día. El nuestro no funciona así. El eliminador de fondo carga el modelo IS-Net en tu pestaña del navegador y lo ejecuta en tu propia máquina, por lo que la imagen nunca se convierte en el cuerpo de una solicitud HTTP.

Lo que regresa es siempre un PNG con un canal alfa, y generalmente es más grande que el archivo que subiste. Eso sorprende a la gente. La transparencia tiene un precio y PNG es el único formato ampliamente soportado que la admite.

¿La imagen sale de mi computadora?

No. No hay una ruta de API en este código y no hay acción del servidor, por lo que no hay un punto final que pueda recibir tu imagen ni siquiera por accidente. El único tráfico de red que hace la herramienta es una solicitud de mismo origen para los pesos del modelo, que se encuentran bajo /ml-assets en nuestro propio dominio, y solo los descargarás una vez. Después de eso, tu navegador los tiene en caché. Tu archivo se lee con createImageBitmap, se entrega al modelo como píxeles y se escribe de nuevo como un Blob que vive en la pestaña hasta que lo descargas o la cierras. No hay nada que poner en cola para eliminación posterior porque nada llega a ningún lado. La página de privacidad es breve por esa razón.

¿Qué hace realmente el modelo IS-Net?

IS-Net es una red de segmentación de objetos salientes de la investigación DIS. Lee todo el fotograma y predice, por píxel, cuán probable es que ese píxel pertenezca a la única cosa de la que trata la imagen. Esa predicción se convierte en el canal alfa del PNG de salida. No sabe qué es una persona, o una botella de champú. Sabe sobre saliencia. Por eso un solo sujeto en un suelo plano se recorta limpiamente, mientras que un grupo de personas en una calle concurrida a menudo no lo hace.

El tiempo de ejecución es ONNX Runtime Web y el motor solicita el dispositivo WebGPU. Donde falta WebGPU, la biblioteca vuelve a la CPU por sí sola y aún terminará, más lento. Los archivos se ejecutan uno a la vez. Si subes diez, esperarás a través de diez pasadas de inferencia, así que un lote de fotos de vacaciones es un descanso para el café.

¿Por qué el PNG recortado es más grande que el JPG que subí?

JPEG no lleva canal alfa en ningún modo, por lo que un recorte no puede seguir siendo un JPEG. La salida tiene que ser PNG, que es sin pérdidas. Dos cosas suceden al mismo tiempo. Los píxeles decodificados se almacenan exactamente, con artefactos de compresión y todo, y cada píxel gana un byte alfa que nunca tuvo antes. El almacenamiento sin pérdidas de detalles fotográficos es costoso. Para dar una idea, texture.jpg en nuestro conjunto de pruebas es 3840x2160 y pesa 538.6 KB, mientras que alpha.png es 900x606 con transparencia y pesa 942.4 KB. Eso es aproximadamente 1.75 veces los bytes con aproximadamente una quinceava parte del conteo de píxeles. Nadie agregó nada a tu imagen. Ahora solo estás pagando precios de PNG.

¿Cómo puedo hacer que el PNG recortado sea más pequeño?

Envíalo al compresor de imágenes y elige uno de los dos modos de PNG. Ambos mantendrán el canal alfa. "PNG sin compresión" ejecuta oxipng en el nivel 3, que es sin pérdidas: mismos píxeles, menos bytes. "PNG tamaño de archivo más pequeño" ejecuta imagequant, que reduce la imagen a una paleta. Aquí está lo que cada uno hizo a alpha.png, el PNG transparente de 900x606 mencionado anteriormente.

Ambos modos de PNG en nuestro compresor, medidos en el mismo archivo transparente de 900x606.
ModoLo que haceResultadoCambio
Archivo fuente900x606 PNG con un canal alfa real942.4 KBbase
PNG sin compresiónoxipng nivel 3, completamente sin pérdidas383.9 KB-59%
PNG tamaño de archivo más pequeñoimagequant, reducción de paleta98.3 KB-90%
Tarjeta de resultado del compresor que muestra un PNG transparente pasando de 942.4 KB a 98.3 KB en modo de paleta
Modo de paleta en un PNG transparente: 942.4 KB bajando a 98.3 KB, alfa intacto.

La ruta de la paleta consume primero los degradados. Los logotipos planos y las imágenes de productos lo soportan bien. Un flequillo sobre una sombra suave es donde aparece el banding, así que mira el resultado a tamaño completo antes de enviarlo. La compresión también elimina cada pieza de metadatos: EXIF, GPS, perfil ICC y miniatura incrustada. La orientación se mantiene.

¿Puede poner un fondo blanco detrás del sujeto?

No lo hará. El eliminador escribe alfa y se detiene ahí. No hay color de relleno ni imagen de reemplazo en ninguna parte de la herramienta. Si deseas blanco detrás del sujeto, pasa el PNG terminado por PNG a JPG. Cualquier formato de destino sin un canal alfa obtiene la transparencia compuesta sobre blanco, por lo que JPEG y PDF te entregan un fondo blanco sin pasos adicionales. Si necesitas el recorte en un tamaño de píxel diferente, el redimensionador escribe PNG sin pérdidas, por lo que el alfa sobrevive ese viaje también. El recortador hace lo mismo para PNG, un archivo a la vez hasta 10 MB.

¿Qué archivos puedo subir y cuántos?

Diez archivos y 50 MB por lote. El selector acepta JPEG, PNG, WebP, AVIF, GIF, BMP e ICO. SVG y HEIC son rechazados antes de que comience cualquier trabajo del modelo, porque Chrome no puede decodificar ninguno de los dos: SVG es XML sin píxeles, y HEIC es un contenedor HEIF que solo Safari renderiza. Para un HEIC de iPhone, ejecuta HEIC a PNG primero y sube el resultado al eliminador, y por qué Windows no puede abrir ese archivo tampoco explica lo que hay dentro del contenedor. Cada salida mantiene el nombre base del archivo fuente con una extensión .png, por lo que los reconocerás en tu carpeta de descargas, y varios resultados a la vez se descargarán como background-removed.zip.

¿Por qué mi recorte volvió completamente en blanco?

Una imagen sin sujeto saliente devuelve un PNG completamente transparente, y la caída de tamaño puede incluso leerse como un ahorro. Verificamos eso, para que no envíes un blanco por error. Después de cada ejecución, el motor muestrea el canal alfa hasta un lado de 1024 px y cuenta los píxeles que están en alfa 64 o más. Si menos del 0.1% del fotograma sobrevive, la tarjeta te dice que no se encontró sujeto. Paisajes, texturas y fondos planos caen allí rutinariamente. El archivo sigue siendo tuyo para descargar. Simplemente no es un recorte, y ninguna cantidad de re-ejecuciones lo convertirá en uno.

Prueba un archivo antes de poner en cola diez. Sube un solo producto al eliminador de fondo, descarga el PNG, luego envía ese mismo PNG directamente al compresor y elige "PNG tamaño de archivo más pequeño". Compara los dos tamaños y decide cuál realmente enviarías. Si ese recorte también va a un documento, la página en la que se convierte una sola imagen una vez que es un PDF se mide por separado.