Your user takes one front photo and one side photo with their phone, and enters their height and weight. The API returns 14 measurements in centimeters, including chest, waist, hips, and shoulders. No tape measure, no setup, a single HTTP request.
Under the hood, silhouette extraction, height/weight planes, and an MNASNet-based regression network do the work — all you see on your side is a single POST.
Front and side photo, JPEG or PNG, up to 8 MB. Plus height and weight. multipart/form-data, nothing else needed.
The background is removed, the two silhouettes are merged, and height and weight are added as separate channels. The model produces 14 values in a single pass.
14 measurements in centimeters come back as JSON, along with short field names you can write straight into your user record.
The form below sends a request through the secure demo proxy. Photos are never stored on the server — they're dropped from memory as soon as the prediction finishes.
For best results: the person should be fully visible head to toe, the background should be plain and high-contrast, and the side photo should be taken turned 90°. Loose clothing inflates girth measurements.
Automate measurement collection for waist-to-hip ratio, body composition, and risk scores.
Measure user progress by actual girth measurements, not just weight.
Accurate size recommendations are the fastest lever for cutting return rates.
No SDK, no custom protocol. Any language and framework that can upload a file works on the first try.
curl -X POST https://your-domain.com/v1/predict \ -H "Authorization: Bearer $API_KEY" \ -F "front=@front.jpg" \ -F "side=@side.jpg" \ -F "height_cm=175" \ -F "weight_kg=70"
const form = new FormData(); form.append("front", frontFile); form.append("side", sideFile); form.append("height_cm", "175"); form.append("weight_kg", "70"); const res = await fetch(url + "/v1/predict", { method: "POST", headers: { "Authorization": `Bearer ${apiKey}` }, body: form, }); const { measurements } = await res.json();
import requests api_key = "your-api-key" r = requests.post( "https://your-domain.com/v1/predict", headers={"Authorization": "Bearer " + api_key}, files={ "front": open("front.jpg", "rb"), "side": open("side.jpg", "rb"), }, data={"height_cm": 175, "weight_kg": 70}, timeout=60, ) print(r.json()["measurements"])
{
"input": { "height_cm": 175.0, "weight_kg": 70.0 },
"measurements": {
"Chest girth": 100.7,
"Waist girth": 89.7,
"Hip girth": 98.4,
"Shoulder breadth": 36.6
// … 14 measurements total
},
"db_fields": { "chest_cm": 100.7, "waist_cm": 89.7 }
}
/v1/predictTwo photos + height/weight → 14 measurements/v1/measurementsMeasurement names and DB field mapping/v1/healthService and model status/v1/docsInteractive OpenAPI interfaceTell us about your usage volume and integration scenario; we'll put together a test key and a sample integration for you.