Benchmark de compresión de imágenes de PiPic — T3 de 2026
CONJUNTO DE DATOS PÚBLICO
Revisa las pruebas, no una clasificación
Las entradas con licencia, versiones y comandos exactos, ejecuciones completas, medianas, el fallo conservado y la revisión visual están disponibles a continuación.
Método
- Estratificar las entradas entre PNG, JPEG, WebP y AVIF.
- Usar solo imágenes cuya licencia permita la redistribución pública y registrar cada fuente y licencia en
manifest.csv. - Registrar el nombre de cada herramienta, su versión exacta, el comando, la fecha, la máquina y la configuración.
- Comparar entrada y salida en el mismo formato. La conversión de formato no cuenta como compresión.
- Registrar bytes de entrada y salida, bytes ahorrados, duración, fallos y archivos que no se hicieron más pequeños.
- Conservar los valores atípicos y documentar su causa.
- Ejecutar cada caso tres veces consecutivas en la misma máquina y publicar la duración mediana.
- Elegir al azar al menos tres salidas por formato para comprobar la decodificación y revisarlas visualmente.
- Generar
results.csvdesde el ejecutor sin editar las mediciones a mano. - Publicar las limitaciones y los casos donde una herramienta comparada obtiene un resultado mejor.
Entradas
Tres fotografías cubren paisaje, comida y arquitectura. Cada fuente es CC0 o de dominio público y se codifica como PNG, JPEG, WebP y AVIF, lo que da 12 entradas. Cada operación conserva el formato. Un PNG entra y sale como PNG, y lo mismo ocurre con los demás formatos. manifest.csv registra la página pública de origen, la licencia, el tamaño en bytes y el SHA-256 de cada entrada incluida. SOURCES.md registra el autor y el SHA-1 de Wikimedia verificado antes de crear los derivados.
Los derivados son entradas de alta calidad creadas de forma deliberada. No representan todas las imágenes de la web. Cada motivo tiene las mismas dimensiones en sus cuatro formatos y todos los archivos están por debajo del límite publicado de 8 MB de PiPic.
Herramientas y configuraciones
- PiPic Agent CLI 1.0.6 usa la CLI publicada y su servicio remoto de compresión, un archivo cada vez con
-o,--jsony--concurrency 1. - sharp 0.35.3 usa llamadas locales con opciones explícitas. PNG emplea nivel de compresión 6 sin conversión a paleta. JPEG usa calidad 80, croma 4:2:0 y codificación optimizada. WebP usa calidad 80 y effort 4. AVIF usa calidad 50, effort 4, croma 4:4:4 y salida de 8 bits.
La columna command guarda la ruta exacta del ejecutable y los argumentos de cada ejecución. Las opciones de sharp están en scripts/sharp-compress.mjs, incluido en el paquete público de reproducción.
Observaciones registradas
- La ejecución produjo 72 filas. Son 12 entradas por 2 herramientas por 3 ejecuciones consecutivas.
- PiPic completó 35 de 36 operaciones. La segunda ejecución de
food.webpdevolviófetch failed. La fila se conserva como error con salida y ahorro de cero bytes, y no se volvió a ejecutar. - Con la configuración PNG sin paleta descrita arriba, sharp produjo un archivo mayor para las tres entradas PNG en las tres ejecuciones. Las nueve filas se conservan como
not_smaller; no cuentan como ahorro ni como fallo. - Las demás salidas se decodificaron en su formato de entrada. Una muestra determinista con tres motivos diferentes por formato superó la revisión visual.
Son observaciones del conjunto de datos y no una afirmación sobre el «mejor compresor». summary.csv publica las medianas y results.csv conserva la fuente de los fallos y la variación.
Reproducción
Requisitos.
- macOS u otro entorno con Node.js 20+, npm y
ffprobe. ffmpegcompilado conlibsvtav1ycwebpsolo si se regeneran las entradas incluidas.- Una sesión de PiPic CLI autorizada por el usuario con al menos 36 operaciones mensuales disponibles. El ejecutor no lee ni muestra credenciales, pero consume cuota real porque PiPic es un servicio remoto.
Desde este directorio.
# Optional: re-download the three sources, verify their Wikimedia SHA-1,
# and recreate all 12 inputs and manifest rows.
node scripts/prepare-inputs.mjs
# Install exact tool versions into ignored .tools/, check PiPic quota,
# execute three runs, decode outputs and generate the CSV files.
node scripts/run.mjs
# Run after completing the selected visual review.
node scripts/validate.mjs
La máquina registrada usaba macOS 26.5.1, un Apple M5 y 24 GiB de RAM. Las duraciones de PiPic incluyen la solicitud remota; las de sharp corresponden a ejecución local. No deben presentarse como una comparación de velocidad de CPU.
Limitaciones
- Se comparan flujos documentados, sin igualar la calidad perceptual. Las diferencias de tamaño pueden reflejar decisiones de calidad distintas.
- El conjunto contiene tres motivos fotográficos. No representa ilustraciones, gráficos con mucho canal alfa, capturas de pantalla, animación ni todas las cámaras.
- PiPic es remoto y sharp es local. La red, la carga del servicio y la ubicación afectan a PiPic; la carga de la máquina afecta a ambos.
- La revisión visual confirma que las salidas seleccionadas son utilizables, pero no proporciona una puntuación numérica de calidad perceptual. No se hacen afirmaciones de PSNR, SSIM ni SSIMULACRA2.
- El único fallo de solicitud de PiPic conservado significa que la tasa de finalización no fue del 100 %. Una ejecución posterior debe publicarse por separado y no sustituir estos resultados.
Control de reproducción
El conjunto superó su control de reproducción local. Todas las entradas tienen licencia pública y SHA-256, las filas originales incluyen los comandos documentados, todas las salidas sin error se decodificaron, tres salidas distintas por formato superaron la revisión visual y las medianas se pueden recalcular desde el CSV original.
No uses estos datos para afirmar «más rápido», «más pequeño», «mejor» ni expresiones equivalentes.