ForHosting KIT · Imágenes

Hash perceptual

Dos fotos pueden ser distintas byte a byte —redimensionadas, guardadas de nuevo, con marca de agua— y aun así ser visualmente la misma imagen. Este endpoint genera un hash perceptual que captura cómo se ve una imagen, no sus bytes exactos, para que pueda comparar fotos como lo haría un ojo humano.

● EstableGratis · en su navegador
Úselo desde WebAPIEmailApp prontoTelegram pronto

Corre en su navegador. Gratis y sin límite: sus datos no salen de esta página.

Por qué comparar bytes no alcanza

Un checksum o hash de archivo cambia por completo en cuanto un solo byte es distinto, lo que lo vuelve inútil para detectar la misma foto vuelta a subir con otra resolución, recodificada a otra calidad o recortada apenas unos píxeles. Sin embargo, ese es exactamente el tipo de duplicación que aparece constantemente en el mundo real: una foto de producto robada y redimensionada para un nuevo anuncio, una imagen de stock recomprimida por una docena de plataformas distintas, la captura de una captura. Un hash perceptual está diseñado para sobrevivir precisamente a esas transformaciones.

Qué captura realmente el hash

Envía una imagen a POST /image/phash y la tarea analiza su estructura general —el patrón amplio de zonas claras y oscuras— y devuelve un valor de hash compacto que describe ese patrón en lugar de los píxeles en bruto. Dos imágenes que se parecen a simple vista producen hashes cercanos entre sí según una medida de distancia sencilla, aunque su peso, dimensiones o compresión difieran bastante; dos imágenes genuinamente distintas producen hashes alejados entre sí.

Una técnica más vieja que la web

El hashing perceptual desciende de un campo mucho más antiguo: la recuperación de imágenes por contenido, en la que ya se investigaba antes de que los buscadores pudieran indexar imágenes por el texto que las rodeaba. La idea central no ha cambiado desde entonces: reducir una imagen a su estructura gruesa, descartar el detalle fino que varía con la compresión y la edición, y obtener una huella robusta al ruido pero aun así distintiva entre fotos genuinamente diferentes.

Comparar hashes, no imágenes

El resultado de este endpoint es un valor de hash, no un puntaje de similitud contra otra imagen específica; esa comparación la hace usted, calculando la distancia entre dos hashes que ya generó, algo lo bastante rápido como para aplicarlo sobre colecciones grandes sin volver a llamar a la API. Como toda tarea aquí, la solicitud en sí es asíncrona: recibe un task_id de inmediato y el hash llega después por webhook firmado o por un enlace firmado válido durante 24 horas.

Ponerlo a trabajar a gran escala

Las plataformas suelen calcular el hash de cada imagen al momento de recibirla y guardar el valor junto al archivo, y luego comparan cada nueva carga contra el conjunto existente para detectar duplicados, reposteos o infracciones de derechos antes de que se publiquen. A $0.002 por solicitud y sin cargo por tareas fallidas, calcular el hash de toda una biblioteca existente para poner al día un sistema de detección de duplicados resulta lo bastante económico como para hacerlo de una sola pasada en lugar de trabajar con una muestra.

Detección de cargas duplicadas

Calcule el hash de cada carga nueva y compárelo contra los existentes para detectar la misma foto reenviada con otro tamaño o nivel de compresión.

Señalar contenido robado o reposteado

Detecte cuando una foto de producto o de un artículo fue tomada y vuelta a subir en otro sitio, incluso después de redimensionarla o editarla levemente.

Deduplicación de anuncios en marketplaces

Identifique fotos de anuncios casi idénticas entre distintos vendedores para fusionar entradas duplicadas del catálogo o señalar reposteos sospechosos.

Limpieza de bibliotecas de medios

Calcule hashes perceptuales retroactivamente sobre un archivo fotográfico existente para encontrar y consolidar archivos casi duplicados acumulados durante años de cargas.

¿En qué se diferencia un hash perceptual de un hash de archivo normal?

Un hash de archivo cambia por completo con cualquier variación a nivel de byte; un hash perceptual se mantiene similar para imágenes que se ven parecidas aunque hayan sido redimensionadas, recomprimidas o editadas levemente.

¿La API de hash perceptual es gratuita?

La herramienta de arriba es gratis en su navegador. La API es de pago: cada llamada se descuenta de su saldo prepago de ForHosting KIT — se recarga desde $10.00 (no caduca), se paga el precio publicado de cada solicitud, y una llamada sin saldo devuelve HTTP 402. Sin suscripción, sin tokens, y una tarea fallida no se cobra.

¿La API me dice si dos imágenes son duplicadas?

La API devuelve un valor de hash por cada imagen; usted calcula la distancia entre dos hashes para decidir qué tan parecidas son, algo rápido que no requiere otra llamada a la API.

¿Detecta duplicados redimensionados o recomprimidos?

Sí, ese es el propósito central de un hash perceptual: el redimensionado, la recompresión y las ediciones menores producen un hash que se mantiene cercano al original.

¿Puedo calcular el hash de toda una biblioteca existente en lote?

Sí, envía una solicitud por imagen; cada tarea se encola y se factura por separado, así que actualizar retroactivamente los hashes de un archivo grande es sencillo.

¿Cómo recibo el hash generado?

Por webhook firmado, recomendado para flujos automatizados, o mediante un enlace firmado válido por 24 horas.

¿Puede una imagen completamente distinta coincidir por error?

Las imágenes genuinamente distintas producen hashes muy alejados según las medidas de distancia habituales, así que los falsos positivos son poco comunes si usa un umbral de similitud razonable.

¿Qué formatos de imagen admite phash?

Se admiten formatos rasterizados estándar como JPEG y PNG para generar el hash perceptual.

Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.

POSThttps://api.kit.forhosting.com/image/phash

¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, y pronto desde nuestra app, el email y Telegram.

curl -X POST https://api.kit.forhosting.com/image/phash \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"image":"https://ejemplo.com/imagen.jpg"}'
{
  "image": "https://ejemplo.com/imagen.jpg"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "image.phash",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

max_mb15
max_megapixels12
HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

Ver la documentación completa del KIT →