Shape Detection API

Détecte les formes géométriques dans une image.

https://api.overcorp.fr


POST /upload

Envoie une image pour analyse.

curl -X POST -F "image=@photo.png" https://api.overcorp.fr/upload
{"id": 42}

Option ?wait=true

Attend la fin du traitement et renvoie directement l'image annotée.

curl -X POST -F "image=@photo.png" "https://api.overcorp.fr/upload?wait=true" -o result.jpg

GET /status/:id

Récupère le résultat de l'analyse.

{
  "completed": true,
  "detections": [
    {"class": "Rectangle", "confidence": 0.96, "bbox": [10, 20, 150, 200]},
    {"class": "Cercle", "confidence": 0.91, "bbox": [200, 50, 300, 150]}
  ]
}

Si completed: false, l'analyse est encore en cours. Poll toutes les 500ms.

Formes détectées : Carre, Cercle, Hexagone, Octogone, Pentagone, Rectangle, Triangle


GET /result/:id

Retourne l'image avec les bounding boxes dessinées (JPG).

https://api.overcorp.fr/result/42

Exemples

Rapide (attendre le résultat)

curl -X POST -F "image=@photo.png" "https://api.overcorp.fr/upload?wait=true" -o result.jpg

Async (polling)

const form = new FormData();
form.append("image", file);

// upload
const { id } = await fetch("https://api.overcorp.fr/upload", {
  method: "POST",
  body: form
}).then(r => r.json());

// poll
let res;
do {
  await new Promise(r => setTimeout(r, 500));
  res = await fetch(`https://api.overcorp.fr/status/${id}`).then(r => r.json());
} while (!res.completed);

console.log(res.detections);

// image annotée
const img = `https://api.overcorp.fr/result/${id}`;

Playground

Glisse une image ou clique ici